mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	attempt to fix rb_alloc_tmp_buffer2 for ALLOCV_N
This is a confusing function to my arithmetic-challenged mind, but nobu seems alright with this. Anyways this lets me use large values of elsize without segfaulting, and "make exam" passes. * include/ruby/ruby.h (rb_alloc_tmp_buffer2): attempt to fix [ruby-core:81388] [ruby-core:81391] [Bug #13595] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
		
							parent
							
								
									5e7ce51911
								
							
						
					
					
						commit
						190e29f72e
					
				
					 1 changed files with 1 additions and 1 deletions
				
			
		| 
						 | 
					@ -1611,7 +1611,7 @@ static inline void *
 | 
				
			||||||
rb_alloc_tmp_buffer2(volatile VALUE *store, long count, size_t elsize)
 | 
					rb_alloc_tmp_buffer2(volatile VALUE *store, long count, size_t elsize)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    size_t cnt = (size_t)count;
 | 
					    size_t cnt = (size_t)count;
 | 
				
			||||||
    if (elsize % sizeof(VALUE) == 0) {
 | 
					    if (elsize == sizeof(VALUE)) {
 | 
				
			||||||
	if (RB_UNLIKELY(cnt > LONG_MAX / sizeof(VALUE))) {
 | 
						if (RB_UNLIKELY(cnt > LONG_MAX / sizeof(VALUE))) {
 | 
				
			||||||
	    ruby_malloc_size_overflow(cnt, elsize);
 | 
						    ruby_malloc_size_overflow(cnt, elsize);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue