diff options
| author | Nobuyoshi Nakada <[email protected]> | 2017-03-13 23:49:49 +0900 |
|---|---|---|
| committer | Nobuyoshi Nakada <[email protected]> | 2017-03-13 23:56:33 +0900 |
| commit | d8c4fe7bcb07b4268184b526652311f28f0ce3a5 (patch) | |
| tree | 2463f49757b68094abf5b0655d17efeb434ec258 /mrbgems/mruby-sprintf/test/sprintf.rb | |
| parent | 191ee2596cc7b22e3213d82bab1a48ae6152b475 (diff) | |
| download | mruby-d8c4fe7bcb07b4268184b526652311f28f0ce3a5.tar.gz mruby-d8c4fe7bcb07b4268184b526652311f28f0ce3a5.zip | |
Fix out-of-bound access
Get rid of out-of-bound access when single % at the end.
Diffstat (limited to 'mrbgems/mruby-sprintf/test/sprintf.rb')
| -rw-r--r-- | mrbgems/mruby-sprintf/test/sprintf.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/mrbgems/mruby-sprintf/test/sprintf.rb b/mrbgems/mruby-sprintf/test/sprintf.rb index ccbd95d51..178904d60 100644 --- a/mrbgems/mruby-sprintf/test/sprintf.rb +++ b/mrbgems/mruby-sprintf/test/sprintf.rb @@ -30,3 +30,14 @@ assert("String#% with invalid chr") do end end end + +assert("String#% invalid format") do + assert_raise ArgumentError do + "%?" % "" + end +end + +assert("String#% invalid format shared substring") do + fmt = ("x"*30+"%!")[0...-1] + assert_equal fmt, sprintf(fmt, "") +end |
