Don't call strlen() twice on the same string.
rafl [Sat, 4 Oct 2008 02:31:41 +0000 (02:31 +0000)]
git-svn-id: http://dev.catalyst.perl.org/repos/bast/Devel-Declare/1.000/trunk@4871 bd8105ee-0ff8-0310-8827-fb3f25b6796d

Declare.xs

index 4148673..9b10cc4 100644 (file)
@@ -120,7 +120,7 @@ void dd_set_linestr(pTHX_ char* new_value) {
   int new_len = strlen(new_value);
   char* old_linestr = SvPVX(PL_linestr);
 
-  SvGROW(PL_linestr, strlen(new_value));
+  SvGROW(PL_linestr, new_len);
 
   if (SvPVX(PL_linestr) != old_linestr)
     croak("forced to realloc PL_linestr for line %s, bailing out before we crash harder", SvPVX(PL_linestr));