| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-06-20 | Fix potential buffer overflow in `sprintf.c`. | Yukihiro "Matz" Matsumoto | |
| 2020-05-27 | Move `fmt_setup` until absolutely necessary. | Yukihiro "Matz" Matsumoto | |
| 2020-05-26 | Integer format can be bigger than `32` on 64bit platforms. | Yukihiro "Matz" Matsumoto | |
| We made it `64` which should be big enough: - Format modifier: 4 characters max - Maximum width: 19 digits max - Period between width and precision: 1 character - Maximum precision: 19 digits max - Format specifier: 1 character - NUL terminator: 1 byte - Total: 45 < 64 | |||
| 2020-05-07 | Remove unnecessary `sprintf` test that fails since 91368c1. | Yukihiro "Matz" Matsumoto | |
| 2020-05-07 | Avoid `mrb_funcall` if `MRB_UFT8_STRING` is not set. | Yukihiro "Matz" Matsumoto | |
| 2020-04-11 | Support `MRB_DISABLE_STDIO` for mruby-sprintf; ref #4954 | dearblue | |
| 2020-04-11 | Supports some specifier flags with `mrb_float_to_str()` | dearblue | |
| Changed to understand `#`, `0`, `-`, ` ` and `+`. Based on src/stdio/vfprintf.c in git://git.musl-libc.org/musl | |||
| 2020-03-08 | Add configuration guard for `MRB_DISABLE_STDIO` | dearblue | |
| ref #4576 and ref #4947 * Need MRBAPI functions without `MRB_DISABLE_STDIO`: * mrbgems/mruby-bin-debugger * mrbgems/mruby-bin-mirb * mrbgems/mruby-bin-mrbc * mrbgems/mruby-bin-mruby * mrbgems/mruby-bin-strip * Need `stdio.h`: * mrbgems/mruby-io * mrbgems/mruby-print * Need `snprintf()` in `stdio.h`: * mrbgems/mruby-pack * mrbgems/mruby-sprintf | |||
| 2020-03-08 | Remove unnecessary 'stdio.h'; ref #4947 | dearblue | |
| 'stdio.h' is included in 'mruby.h' ('mrbconf.h'). However, keep 'stdio.h' used by mruby-test. | |||
| 2019-11-15 | Fix argument specs to `Kernel` | KOBAYASHI Shuji | |
| 2019-09-29 | Further refactoring over #4738 | Yukihiro "Matz" Matsumoto | |
| 2019-09-29 | Remove unnecessary assignments | dearblue | |
| 2019-09-26 | Use proper type specifier for `mrb_raisef()`; ref #4731 | Yukihiro "Matz" Matsumoto | |
| The following two may be different: * `%d` for `int` * `%i` for `mrb_int` | |||
| 2019-09-26 | Merge pull request #4731 from dearblue/consistent-type | Yukihiro "Matz" Matsumoto | |
| Keep the type of `posarg` consistent | |||
| 2019-09-25 | Keep the type of `posarg` consistent | dearblue | |
| Match the type with the caller and related functions. | |||
| 2019-09-25 | Add "fall through" | dearblue | |
| 2019-08-05 | Use new specifiers/modifiers of `mrb_vfromat()` | KOBAYASHI Shuji | |
| The binary sizes (gems are only `mruby-bin-mruby`) are reduced slightly in my environment than before the introduction of new specifiers/modifiers (5116789a) with this change. ------------+-------------------+-------------------+-------- BINARY | BEFORE (5116789a) | AFTER (This PR) | RATIO ------------+-------------------+-------------------+-------- mruby | 593416 bytes | 593208 bytes | -0.04% libmruby.a | 769048 bytes | 767264 bytes | -0.23% ------------+-------------------+-------------------+-------- BTW, I accidentally changed `tasks/toolchains/visualcpp.rake` at #4613, so I put it back. | |||
| 2019-01-03 | Remove `Kernel#class_defined?` which is not available in CRuby; #3829 | Yukihiro "Matz" Matsumoto | |
| 2018-11-19 | Use type checking `mrb_to_str` instead of converting `mrb_str_to_str`. | Yukihiro "Matz" Matsumoto | |
| 2018-11-19 | Removed `to_hash` conversion method. | Yukihiro "Matz" Matsumoto | |
| 2018-09-14 | Prevent signed integer overflow. | Clayton Smith | |
| 2018-09-07 | Fix integer overflow issue; fix #4108 | Yukihiro "Matz" Matsumoto | |
| I misunderstood the return value from `snprintf()`, which is NOT number of characters written in buffer, but the number of character the buffer has to have to write the complete output. | |||
| 2018-07-31 | Check size of the integer multiply before actual overflow; fix #4062 | Yukihiro "Matz" Matsumoto | |
| 2017-10-13 | Support MRB_WIHTOUT_FLOAT to mruby-sprintf | YAMAMOTO Masaya | |
| 2017-09-27 | fix: mrbgems\mruby-sprintf\src\sprintf.c(1052): warning C4244: '+=': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-sprintf\src\sprintf.c(623): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-sprintf\src\sprintf.c(646): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-sprintf\src\sprintf.c(618): warning C4244: ↵ | Tomasz Dąbrowski | |
| 'initializing': conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-09-27 | fix: mrbgems\mruby-sprintf\src\sprintf.c(516): warning C4244: 'function': ↵ | Tomasz Dąbrowski | |
| conversion from 'mrb_int' to 'int', possible loss of data | |||
| 2017-08-25 | fix `String#% %d` test with `MRB_INT16` set | Tomasz Dąbrowski | |
| 2017-08-18 | Separate `mrb_str_buf_new` and `mrb_str_new_capa`. | Yukihiro "Matz" Matsumoto | |
| `mrb_str_buf_new` is an old function that ensures capacity size of `MRB_STR_BUF_MIN_SIZE` minimum. Usually one need to use `mrb_str_new_capa` instead. | |||
| 2017-08-12 | Reduce integer type mismatch warnings in VC. | Yukihiro "Matz" Matsumoto | |
| 2017-08-09 | Replaced tabs with spaces | Christopher Aue | |
| 2017-07-16 | added tests for #3736 | Christopher Aue | |
| 2017-07-14 | Avoid duplicated width filling for sprintf `%d` specifier; fix #3736 | Yukihiro "Matz" Matsumoto | |
| 2017-07-05 | `print("%d", 0)` should not print `-0`; fix #3731 | Yukihiro "Matz" Matsumoto | |
| 2017-07-05 | Negation was not a good way to handle negative integers; fix #3729 | Yukihiro "Matz" Matsumoto | |
| There's a number that negation does not work (-2147483648 in 32bit environment). | |||
| 2017-07-05 | In Ruby, `sprintf` specifier `%u` should behave as `%d`; fix #3730 | Yukihiro "Matz" Matsumoto | |
| Since there's no unsigned integer in Ruby. Binary, octal and hexadecimal negative numbers can be represented by using 2's compliment. But decimal (not being power of 2) cannot be use that kind of format. | |||
| 2017-07-04 | Refactor `sprintf()` code. | Yukihiro "Matz" Matsumoto | |
| 2017-07-04 | Initialize `flags` for each loop. | Yukihiro "Matz" Matsumoto | |
| 2017-06-28 | Avoid `mrb_funcall()` unless absolutely necessary; ref #3722 | Yukihiro "Matz" Matsumoto | |
| As a result, `#chr` is not called for ch < 0x80, so we need to update the "invalid chr" test. | |||
| 2017-05-25 | Under MRB_INT64, width may be bigger than INT_MAX; fix #3665 | Yukihiro "Matz" Matsumoto | |
| 2017-05-08 | Fix segmentation fault ref: #3648 | ksss | |
| 2017-04-29 | Better error message | Nobuyoshi Nakada | |
| Raise argument error with the better message, at the only place where the size to fill can be negative. | |||
| 2017-04-29 | Use `FILL` and `PUSH` | Nobuyoshi Nakada | |
| Instead of loop or `memcpy` after `CHECK`, use dedicated macros, `FILL` and `PUSH`, respectively. | |||
| 2017-04-23 | Refactor "%f" % Inf/NaN | Nobuyoshi Nakada | |
| As for non-finite float, calculate the exact needed size with the space flag. | |||
| 2017-04-23 | Fix space flag when Inf/NaN and width==3 | Nobuyoshi Nakada | |
| While `"% 2f"` and `"% 4f"` result in `" Inf"` and `" Inf"` respectively, `"% 3f"` results in `"Inf"` (no space). | |||
| 2017-04-03 | Unify `else` clause style | Yukihiro "Matz" Matsumoto | |
| 2017-03-18 | Should use mrb_int for any object | ksss | |
| o=Object.new def o.to_int 1 end p "%*d" % [o, 1] | |||
| 2017-03-13 | Fix out-of-bound access | Nobuyoshi Nakada | |
| Get rid of out-of-bound access when single % at the end. | |||
