ruby-changes:15149
From: naruse <ko1@a...>
Date: Wed, 24 Mar 2010 10:26:23 +0900 (JST)
Subject: [ruby-changes:15149] Ruby:r27028 (trunk): * file.c (file_expand_path): set length of string before calling
naruse 2010-03-24 10:25:02 +0900 (Wed, 24 Mar 2010) New Revision: 27028 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=27028 Log: * file.c (file_expand_path): set length of string before calling rb_enc_check because rb_enc_check scans its content. This prevents warnings by valgrind. Modified files: trunk/ChangeLog trunk/file.c Index: ChangeLog =================================================================== --- ChangeLog (revision 27027) +++ ChangeLog (revision 27028) @@ -1,3 +1,9 @@ +Wed Mar 24 10:18:12 2010 NARUSE, Yui <naruse@r...> + + * file.c (file_expand_path): set length of string before calling + rb_enc_check because rb_enc_check scans its content. + This prevents warnings by valgrind. + Tue Mar 23 23:58:51 2010 James Edward Gray II <jeg2@r...> * lib/csv.rb: Incorporating the fixes from the recent Index: file.c =================================================================== --- file.c (revision 27027) +++ file.c (revision 27028) @@ -2849,11 +2849,14 @@ p = chompdirsep(skiproot(buf)); } else { + size_t len; b = s; do s++; while (isdirsep(*s)); - p = buf + (s - b); + len = s - b; + p = buf + len; BUFCHECK(bdiff >= buflen); - memset(buf, '/', p - buf); + memset(buf, '/', len); + rb_str_set_len(result, len); rb_enc_associate(result, rb_enc_check(result, fname)); } if (p > buf && p[-1] == '/') -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/