]> granicus.if.org Git - php/commitdiff
Eliminate strncpy and simplify code
authorIlia Alshanetsky <iliaa@php.net>
Sat, 24 Feb 2007 17:40:45 +0000 (17:40 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Sat, 24 Feb 2007 17:40:45 +0000 (17:40 +0000)
ext/exif/exif.c

index dcd52587a636783ea8e449183d2bd064519dedf4..ff98ad74756cac7acb439ca5fd0aae6879865949 100644 (file)
@@ -1002,13 +1002,10 @@ static char * exif_get_tagname(int tag_num, char *ret, int len, tag_table_type t
                                break;
                        }
                        if (ret && len)  {
-                               strncpy(ret, tag_table[i].Desc, abs(len));
-                               if (len<0) {
-                                       len = -len;
-                                       ret[len-1]='\0';
-                                       for(i=strlen(ret);i<len;i++)ret[i]=' ';
+                               strlcpy(ret, tag_table[i].Desc, abs(len));
+                               if (len < 0) {
+                                       memset(ret, ' ', -len - 1);
                                }
-                               ret[len-1]='\0';
                                return ret;
                        }
                        return tag_table[i].Desc;
@@ -1016,13 +1013,10 @@ static char * exif_get_tagname(int tag_num, char *ret, int len, tag_table_type t
        }
        if (ret && len) {
                snprintf(tmp, sizeof(tmp), "UndefinedTag:0x%04X", tag_num);
-               strncpy(ret, tmp, abs(len));
-               if (len<0) {
-                       len = -len;
-                       ret[len-1]='\0';
-                       for(i=strlen(ret);i<len;i++)ret[i]=' ';
+               strlcpy(ret, tmp, abs(len));
+               if (len < 0) {
+                       memset(ret, ' ', -len - 1);
                }
-               ret[len-1]='\0';
                return ret;
        }
        return "";