Remove extranaous free() of ASCII filename from NdisOpenFile().
Oh, one additional change I forgot to mention in the last commit: NdisOpenFile() was broken in the case for firmware files that were pre-loaded as modules. When searching for the module in NdisOpenFile(), we would match against a symbol name, which would contain the string we were looking for, then save a pointer to the linker file handle. Later, in NdisMapFile(), we would refer to the filename hung off this handle when trying to find the starting address symbol. Only problem is, this filename is different from the embedded symbol name we're searching for, so the mapping would fail. I found this problem while testing the AirGo driver, which requires a small firmware file.
This commit is contained in:
parent
e9bace5ba1
commit
bb2b136388
@ -2896,7 +2896,6 @@ NdisOpenFile(status, filehandle, filelength, filename, highestaddr)
|
||||
}
|
||||
|
||||
snprintf(path, MAXPATHLEN, "%s/%s", ndis_filepath, afilename);
|
||||
free(afilename, M_DEVBUF);
|
||||
|
||||
mtx_lock(&Giant);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user