]> asedeno.scripts.mit.edu Git - PuTTY.git/commitdiff
64-bit cleanness: fix a couple of format strings in winjump.c.
authorSimon Tatham <anakin@pobox.com>
Sat, 2 Apr 2016 13:12:12 +0000 (14:12 +0100)
committerSimon Tatham <anakin@pobox.com>
Sat, 2 Apr 2016 13:23:11 +0000 (14:23 +0100)
strcspn() returns a size_t, which is not safe to pass as the parameter
in a printf argument list corresponding to a "*" field width specifier
in the format string, because the latter should be int, which may not
be the same size as size_t.

windows/winjump.c

index eca5041a8dfa949da3e91321d494ffcf354c95c6..e5bca9358ead86ddb74a8c48c7b138afe9842486 100644 (file)
@@ -445,7 +445,8 @@ static IShellLink *make_shell_link(const char *appname,
                              sessionname, "'", NULL);
     } else {
         assert(appname);
-        desc_string = dupprintf("Run %.*s", strcspn(appname, "."), appname);
+        desc_string = dupprintf("Run %.*s",
+                                (int)strcspn(appname, "."), appname);
     }
     ret->lpVtbl->SetDescription(ret, desc_string);
     sfree(desc_string);
@@ -461,7 +462,8 @@ static IShellLink *make_shell_link(const char *appname,
             pv.pszVal = dupstr(sessionname);
         } else {
             assert(appname);
-            pv.pszVal = dupprintf("Run %.*s", strcspn(appname, "."), appname);
+            pv.pszVal = dupprintf("Run %.*s",
+                                  (int)strcspn(appname, "."), appname);
         }
         pPS->lpVtbl->SetValue(pPS, &PKEY_Title, &pv);
         sfree(pv.pszVal);