diff --git a/source/fceultra/file.c b/source/fceultra/file.c index f5066c3..11fd91e 100644 --- a/source/fceultra/file.c +++ b/source/fceultra/file.c @@ -279,7 +279,7 @@ FCEUFILE * FCEU_fopen(const char *path, const char *ipsfn, char *mode, char *ext fclose((FILE *)t); else /* Probably gzip */ { - int fd; + int fd = 0; /*** REMOVED GCV1.0 fd = dup(fileno( (FILE *)t)); diff --git a/source/fceultra/unzip.c b/source/fceultra/unzip.c index 7908b1b..eba66e2 100644 --- a/source/fceultra/unzip.c +++ b/source/fceultra/unzip.c @@ -163,7 +163,7 @@ local int unzlocal_getShort (fin,pX) uLong *pX; { uLong x ; - int i; + int i = 0; int err; err = unzlocal_getByte(fin,&i); @@ -185,7 +185,7 @@ local int unzlocal_getLong (fin,pX) uLong *pX; { uLong x ; - int i; + int i = 0; int err; err = unzlocal_getByte(fin,&i); diff --git a/source/ngc/dvd.c b/source/ngc/dvd.c index 9c111a8..4a8d018 100644 --- a/source/ngc/dvd.c +++ b/source/ngc/dvd.c @@ -332,6 +332,7 @@ static int getentry (int entrycount, unsigned char dvdbuffer[]) { char fname[512]; /* Huge, but experience has determined this */ + char tmpname[512]; char *ptr; char *filename; char *filenamelength; @@ -411,8 +412,9 @@ getentry (int entrycount, unsigned char dvdbuffer[]) *rr = 0; strcpy (filelist[entrycount].filename, fname); - fname[MAXDISPLAY - 1] = 0; - strcpy (filelist[entrycount].displayname, fname); + StripExt(tmpname, fname); // hide file extension + tmpname[MAXDISPLAY - 1] = 0; + strcpy (filelist[entrycount].displayname, tmpname); memcpy (&offset32, &dvdbuffer[diroffset + EXTENT], 4); diff --git a/source/ngc/fceugx.c b/source/ngc/fceugx.c index a64ef62..fffce0d 100644 --- a/source/ngc/fceugx.c +++ b/source/ngc/fceugx.c @@ -155,8 +155,6 @@ void CreateAppPath(char origpath[]) if(pos >= 0 && pos < 1024) sprintf(appPath, &(path[pos])); - else - sprintf(appPath, "/"); #endif } @@ -230,7 +228,9 @@ int main(int argc, char *argv[]) DefaultSettings(); // store path app was loaded from - CreateAppPath(argv[0]); + sprintf(appPath, "fceugx"); + if(argc > 0 && argv[0] != NULL) + CreateAppPath(argv[0]); // Load preferences if(!LoadPrefs()) diff --git a/source/ngc/fileop.c b/source/ngc/fileop.c index a376f24..c9ca397 100644 --- a/source/ngc/fileop.c +++ b/source/ngc/fileop.c @@ -118,6 +118,7 @@ ParseFATdirectory(int method) int nbfiles = 0; DIR_ITER *fatdir; char filename[MAXPATHLEN]; + char tmpname[MAXPATHLEN]; struct stat filestat; char msg[128]; @@ -154,7 +155,8 @@ ParseFATdirectory(int method) { memset(&filelist[nbfiles], 0, sizeof(FILEENTRIES)); strncpy(filelist[nbfiles].filename, filename, MAXPATHLEN); - strncpy(filelist[nbfiles].displayname, filename, MAXDISPLAY+1); // crop name for display + StripExt(tmpname, filename); // hide file extension + strncpy(filelist[nbfiles].displayname, tmpname, MAXDISPLAY+1); // crop name for display filelist[nbfiles].length = filestat.st_size; filelist[nbfiles].flags = (filestat.st_mode & _IFDIR) == 0 ? 0 : 1; // flag this as a dir nbfiles++; diff --git a/source/ngc/filesel.c b/source/ngc/filesel.c index 6b892af..e19086d 100644 --- a/source/ngc/filesel.c +++ b/source/ngc/filesel.c @@ -498,7 +498,7 @@ int FileSelector (int method) break; case METHOD_SMB: - maxfiles = ParseSMBdirectory(); + maxfiles = ParseSMBdirectory(NOTSILENT); break; } @@ -759,7 +759,7 @@ OpenSMB (int method) // change current dir to root dir sprintf(currentdir, "/%s", GCSettings.LoadFolder); - maxfiles = ParseSMBdirectory (); + maxfiles = ParseSMBdirectory (SILENT); if (maxfiles > 0) { return FileSelector (method); diff --git a/source/ngc/menudraw.c b/source/ngc/menudraw.c index 1d48d90..191c569 100644 --- a/source/ngc/menudraw.c +++ b/source/ngc/menudraw.c @@ -603,8 +603,7 @@ ShowFiles (FILEENTRIES filelist[], int maxfiles, int offset, int selection) } else { - // hide file extension on listing (.7z, .fig, .smc) - StripExt(text, filelist[i].displayname); + sprintf(text, filelist[i].displayname); } if (j == (selection - offset)) { diff --git a/source/ngc/smbop.c b/source/ngc/smbop.c index e21abed..c887bf8 100644 --- a/source/ngc/smbop.c +++ b/source/ngc/smbop.c @@ -146,13 +146,14 @@ char * SMBPath(char * path) * Load the directory and put in the filelist array *****************************************************************************/ int -ParseSMBdirectory () +ParseSMBdirectory (bool silent) { if(!ConnectShare (NOTSILENT)) return 0; int filecount = 0; char searchpath[1024]; + char tmpname[MAXJOLIET]; SMBDIRENTRY smbdir; // initialize selection @@ -169,13 +170,17 @@ ParseSMBdirectory () if (SMB_FindFirst (SMBPath(searchpath), SMB_SRCH_READONLY | SMB_SRCH_DIRECTORY, &smbdir, smbconn) != SMB_SUCCESS) { - char msg[200]; - sprintf(msg, "Could not open %s", currentdir); - WaitPrompt (msg); + if(!silent) + { + char msg[200]; + sprintf(msg, "Could not open %s", currentdir); + WaitPrompt (msg); + } // if we can't open the dir, open root dir sprintf(searchpath, "/"); sprintf(searchpath,"*"); + sprintf(currentdir,"/"); if (SMB_FindFirst (SMBPath(searchpath), SMB_SRCH_READONLY | SMB_SRCH_DIRECTORY, &smbdir, smbconn) != SMB_SUCCESS) @@ -197,8 +202,8 @@ ParseSMBdirectory () else filelist[filecount].flags = 0; - // Update display name - memcpy (&filelist[filecount].displayname, smbdir.name, MAXDISPLAY); + StripExt(tmpname, smbdir.name); // hide file extension + memcpy (&filelist[filecount].displayname, tmpname, MAXDISPLAY); filelist[filecount].displayname[MAXDISPLAY] = 0; strcpy (filelist[filecount].filename, smbdir.name); diff --git a/source/ngc/smbop.h b/source/ngc/smbop.h index ee41520..4edfbea 100644 --- a/source/ngc/smbop.h +++ b/source/ngc/smbop.h @@ -18,7 +18,7 @@ bool InitializeNetwork(bool silent); bool ConnectShare (bool silent); char * SMBPath(char * path); int UpdateSMBdirname(); -int ParseSMBdirectory (); +int ParseSMBdirectory (bool silent); SMBFILE OpenSMBFile(char * filepath); int LoadSMBSzFile(char * filepath, unsigned char * rbuffer); int LoadSMBFile (char * sbuffer, char *filepath, int length, bool silent);