Zebediah Figura (@zfigura) commented about dlls/msado15/tests/msado15.c:
- /*
* 32 bit Windows has a default driver for "Microsoft Access Driver" (Windows 7+)
* and has the ability to create files on the fly.
*
* 64 bit Windows ONLY has a driver for "SQL Server", which we cannot use since we don't have a
* server to connect to.
*
* The filename passed to CREATE_DB must end in mdb.
*/
- GetTempPathA(sizeof(mdbpath), mdbpath);
- strcat(mdbpath, "wine_msado15.mdb");
- driver = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof("DSN=wine_msado15\0CREATE_DB=") + strlen(mdbpath) + 2);
- memcpy(driver, "DSN=wine_msado15\0CREATE_DB=", sizeof("DSN=wine_msado15\0CREATE_DB="));
- strcat(driver+sizeof("DSN=wine_msado15\0CREATE_DB=")-1, mdbpath);
You're using "strcat" but manually calculating the length; probably this should be strcpy() in that case?