Yukihiro "Matz" Matsumoto
a28fa35ea9
Merge pull request #3282 from bouk/fix-break-instance-class
...
Fix segfault when defining class inside instance_exec on primitive
2016-11-25 09:17:59 +09:00
Yukihiro "Matz" Matsumoto
1e892c0ffa
Merge pull request #3280 from bouk/struct-redefine
...
Remove constant when a struct is redefined.
2016-11-25 09:15:57 +09:00
Yukihiro "Matz" Matsumoto
54921aa671
Merge pull request #3289 from bouk/setbyte-len
...
Read length after args in String#setbyte
2016-11-25 08:01:06 +09:00
Francis Bogsanyi
964427f82c
Fix unsafe peephole optimization
...
Reported by https://hackerone.com/dkasak
2016-11-24 10:32:34 -05:00
Craig Lehmann
83005d83d8
Read length after args in String#setbyte
...
Prevents RCE
Reported by https://hackerone.com/raydot
2016-11-24 10:31:29 -05:00
Bouke van der Bijl
4523aaec01
Fix segfault when defining class inside instance_exec on primitive
2016-11-24 10:06:15 -05:00
Clayton Smith
82731d9ee0
Remove constant when a struct is redefined.
2016-11-24 10:04:09 -05:00
Yukihiro "Matz" Matsumoto
a630c4f413
use MRB_PRId instead of %d for mrb_int
2016-11-24 22:10:54 +09:00
Yukihiro "Matz" Matsumoto
8602789067
Merge pull request #3277 from dabroz/feature-float-tolerance
...
Fixed float tolerance in tests when MRB_USE_FLOAT is set
2016-11-24 21:48:14 +09:00
Yukihiro "Matz" Matsumoto
22f73250db
redo should work well in for statement; fix #3275
2016-11-24 21:25:27 +09:00
Tomasz Dąbrowski
72ed7eebc3
Fixed Range.size to use proper floating point tolerance
2016-11-24 12:50:49 +01:00
Tomasz Dąbrowski
a8b8abbd82
Fixed float tolerance in tests when MRB_USE_FLOAT is set
2016-11-24 12:48:41 +01:00
Yukihiro "Matz" Matsumoto
23c73ff399
Time#initialize_copy: Check if source time is initialized.
...
To prevent crash from nasty code like:
class Time
def initialize
end
end
a = Time.new
b = Time.new
a.initialize_copy b
2016-11-24 13:50:36 +09:00
Yukihiro "Matz" Matsumoto
cef7bd5416
Merge pull request #3271 from ksss/enum-take
...
Fix Enumeable#take some incompatibility
2016-11-24 11:31:28 +09:00
Yukihiro "Matz" Matsumoto
227daa8811
Relax 'void value expression' check that was too strict
2016-11-24 11:22:54 +09:00
ksss
5134734541
Shouldn't call each method if size is 0
2016-11-24 10:35:15 +09:00
ksss
9e2faec8e4
Support object does'n have < method
2016-11-24 10:34:14 +09:00
Yukihiro "Matz" Matsumoto
1c9593954b
Add "void value expression" check to the parser.
2016-11-24 10:32:28 +09:00
Yukihiro "Matz" Matsumoto
dc4be19aab
Add forgotten loop_pop() in NODE_OP_ASGN codegen
2016-11-24 10:01:03 +09:00
Tomasz Dąbrowski
c2a60eb8af
Fix for Windows-specific mruby C++ issues
2016-11-24 09:28:00 +09:00
Tomasz Dąbrowski
1af9e363f2
Fixes for compiling mruby as C++
2016-11-24 09:28:00 +09:00
Yukihiro "Matz" Matsumoto
477e12c182
Merge pull request #3269 from bouk/fix-printf-segfault
...
Fix segfault when Fixnum#chr doesn't return a string
2016-11-24 09:16:43 +09:00
Bouke van der Bijl
9bf1c0e1dc
Fix segfault when Fixnum#chr doesn't return a string
2016-11-23 15:18:52 -05:00
Bouke van der Bijl
c7262be0ae
Fix segfault in Array#sample
2016-11-23 11:21:14 -05:00
Yukihiro "Matz" Matsumoto
669bbc70b0
codegen_scope should not keep old iseq ptr from irep
2016-11-23 21:08:35 +09:00
Yukihiro "Matz" Matsumoto
a70104798e
remove unnecessary ".!"; ref #3261
2016-11-22 16:55:18 +09:00
ksss
682237be6e
Reimplements Range#first
...
Range#first shouldn't call `Range#to_a` on infinity range.
2016-11-21 16:55:49 +09:00
Tomasz Dąbrowski
4289e0cd81
Fix for sprintf test exceeding bounds with MRB_INT16
2016-11-21 00:37:03 +01:00
Yukihiro "Matz" Matsumoto
3ce51cbc7c
Merge pull request #3257 from ksss/range-size
...
Fix Range#size results
2016-11-21 01:15:37 +09:00
ksss
22390aa1c8
Use mrb_float instead of double
2016-11-19 23:25:08 +09:00
ksss
a2fbd80a47
Fix Range#size results
2016-11-19 23:25:07 +09:00
Yukihiro "Matz" Matsumoto
92be276d76
String#{strip,lstrip,rstrip} may cause OOB access
2016-11-17 18:00:21 +09:00
Yukihiro "Matz" Matsumoto
2e8ed9514f
Removed mruby-inline-struct gem from default.gembox; ref #3251
...
bundled testing gems do not need to be included in default.gembox.
all gems under mrbgems are linked automatically in the test process.
2016-11-17 17:19:49 +09:00
Yukihiro "Matz" Matsumoto
8438792d27
renamed "inline" to "istruct" to represent inline struct; ref #3251
2016-11-17 17:19:49 +09:00
Tomasz Dąbrowski
4cca8bac6b
inline structures data type for mruby (MRB_TT_INLINE) ( fix #3237 )
...
Inline structures have no instance variables, no finalizer, and offer as much space as possible in RBASIC object. This means 24 bytes on 64-bit platforms and 12 bytes on 32-bit platforms.
mruby-inline-struct gem is only provided for testing.
2016-11-17 17:19:49 +09:00
Tomasz Dąbrowski
8e0dc6fa8d
Correct argument specifications for few methods:
...
- Struct#values_at
- Module#define_method
- String#chop
- String#chop!
2016-11-16 15:46:28 +01:00
Yukihiro "Matz" Matsumoto
242b219471
Fixed memory disclosure in String#lines
...
Reported from from Alex Snaps via Mathieu Leduc-Hamel,
both from shopify.com. Thank you!
2016-11-16 02:05:19 +09:00
Yukihiro "Matz" Matsumoto
739dad6e87
Fixed a memory problem in Array#to_h
...
Reported from Alex Snaps via Mathieu Leduc-Hamel,
both from shopify.com. Thank you!
2016-11-16 01:29:04 +09:00
Yukihiro "Matz" Matsumoto
01dddaf385
rename mruby-module-ext to mruby-class-ext; ref #2470
2016-11-13 16:17:44 +09:00
take_cheeze
451985d44b
Implement Module#name.
...
Solves #2132 .
2016-11-13 16:17:36 +09:00
Yukihiro "Matz" Matsumoto
752ca514f6
do not dump_node if parser failed
2016-11-11 22:51:48 +09:00
Yukihiro "Matz" Matsumoto
185dad3a6e
node_dump() to print NODE_HEREDOC terminator
2016-11-11 22:50:41 +09:00
Yukihiro "Matz" Matsumoto
45aadd7e60
HEREDOC could fail with NUL terminated lines; fix#3244
2016-11-11 22:49:23 +09:00
ksss
7685783af4
Add regression test for Enumerable#cycle
2016-11-11 16:53:42 +09:00
ksss
126d55480d
Reimplement Enumerable#cycle
...
Fix pattern of infinite loop
And support all specs in https://github.com/ruby/spec/blob/27960d06e0ce92c37f074450f0eab4b0519b118c/core/enumerable/cycle_spec.rb without Enumerable#size
2016-11-11 16:53:42 +09:00
Yukihiro "Matz" Matsumoto
3f002b6993
fixed a bug when number of LHS and RHS differs; fix #3239
2016-11-11 04:37:42 +09:00
Yukihiro "Matz" Matsumoto
1142cf2037
fixed a bug with [] in RHS of multiple assignments; fix #3236
2016-11-08 22:18:41 +09:00
Lukas Elmer
f02694ecc7
Update documentation of fetch
...
The sentence `Negative values of +index+ count from the end of the array.` can be interpreted that it only holds if a block is given. Clarify it.
2016-11-02 19:45:43 +01:00
Yukihiro "Matz" Matsumoto
cc3f1b7f5c
allow single quoted labels in hashes; ref #3231
2016-11-02 16:14:20 +09:00
Yukihiro "Matz" Matsumoto
13d0832965
allow quoted labels in hashes; fix #3231
2016-11-02 08:41:43 +09:00