Buffer overflows and strncpy fixes.

diff --git a/loader/module.c b/loader/module.c
index e9c73f9..89916f9 100644
--- a/loader/module.c
+++ b/loader/module.c
@@ -360,7 +360,7 @@
     NE_MODULE *pModule;
     SEGTABLEENTRY *pSegment;
     char *pStr,*s;
-    int len;
+    unsigned int len;
     const char* basename;
     OFSTRUCT *ofs;
     int of_size, size;
@@ -429,9 +429,9 @@
     /* Module name */
     pStr = (char *)pSegment;
     pModule->name_table = (int)pStr - (int)pModule;
+    assert(len<256);
     *pStr = len;
-    strncpy( pStr+1, basename, len );
-    pStr[len+1] = 0;
+    lstrcpynA( pStr+1, basename, len+1 );
     pStr += len+2;
 
     /* All tables zero terminated */