Alexandre Julliard : winevdm: Don't use strncpy.

Alexandre Julliard julliard at winehq.org
Mon Jan 23 13:01:10 CST 2012


Module: wine
Branch: master
Commit: 584bdb18830d23eed55e43b7f9ef57a19d59ea8b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=584bdb18830d23eed55e43b7f9ef57a19d59ea8b

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Jan 23 12:12:36 2012 +0100

winevdm: Don't use strncpy.

---

 programs/winevdm/winevdm.c |   15 +++++++--------
 1 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/programs/winevdm/winevdm.c b/programs/winevdm/winevdm.c
index 288fa01..0dcc806 100644
--- a/programs/winevdm/winevdm.c
+++ b/programs/winevdm/winevdm.c
@@ -299,14 +299,13 @@ static BOOL read_pif_file( HANDLE hFile, char *progname, char *title,
         }
     }
     /* prepare the return data */
-    strncpy( progname, pifheader.program, sizeof(pifheader.program));
-    memcpy( title, pifheader.windowtitle, sizeof(pifheader.windowtitle));
-    title[ sizeof(pifheader.windowtitle) ] = '\0';
+    lstrcpynA( progname, pifheader.program, sizeof(pifheader.program)+1);
+    lstrcpynA( title, pifheader.windowtitle, sizeof(pifheader.windowtitle)+1);
     if( found386rec)
-        strncpy( optparams, pif386rec.optparams, sizeof( pif386rec.optparams));
+        lstrcpynA( optparams, pif386rec.optparams, sizeof( pif386rec.optparams)+1);
     else
-        strncpy( optparams, pifheader.optparams, sizeof(pifheader.optparams));
-    strncpy( startdir, pifheader.startdir, sizeof(pifheader.startdir));
+        lstrcpynA( optparams, pifheader.optparams, sizeof(pifheader.optparams)+1);
+    lstrcpynA( startdir, pifheader.startdir, sizeof(pifheader.startdir)+1);
     *closeonexit = pifheader.hdrflags1 & 0x10;
     *textmode = found386rec ? pif386rec.videoflags & 0x0010
                             : pifheader.hdrflags1 & 0x0002;
@@ -325,8 +324,8 @@ static VOID pif_cmd( char *filename, char *cmdline)
     char buf[128];
     char progname[64];
     char title[31];
-    char optparams[64];
-    char startdir[64];
+    char optparams[65];
+    char startdir[65];
     char *p;
     int closeonexit;
     int textmode;




More information about the wine-cvs mailing list