DSOerr(DSO_F_WIN32_SPLITTER,
DSO_R_INCORRECT_FILE_SYNTAX);
/*goto err;*/
+ OPENSSL_free(result);
return(NULL);
}
result->device = start;
merged = win32_joiner(dso, filespec1_split);
}
+ OPENSSL_free(filespec1_split);
+ OPENSSL_free(filespec2_split);
return(merged);
}
CREATETOOLHELP32SNAPSHOT create_snap;
CLOSETOOLHELP32SNAPSHOT close_snap;
MODULE32 module_first, module_next;
- int len;
if (addr == NULL)
{
return WideCharToMultiByte(CP_ACP,0,me32.szExePath,-1,
path,sz,NULL,NULL);
# else
- len = (int)wcslen(me32.szExePath);
+ {
+ int i,len = (int)wcslen(me32.szExePath);
if (sz <= 0) return len+1;
if (len >= sz) len=sz-1;
for(i=0;i<len;i++)
path[i] = (char)me32.szExePath[i];
path[len++] = 0;
return len;
+ }
# endif
#else
- len = (int)strlen(me32.szExePath);
+ {
+ int len = (int)strlen(me32.szExePath);
if (sz <= 0) return len+1;
if (len >= sz) len=sz-1;
memcpy(path,me32.szExePath,len);
path[len++] = 0;
return len;
+ }
#endif
}
} while((*module_next)(hModuleSnap, &me32));