Stefan Leichter <stefan.leich...@camline.com> writes: > @@ -1711,28 +1713,29 @@ > } > else > { > - /* If the executable name is not quoted, we have to use this search > loop here, > + /* FIXME: what versions support this? Fails on 2000/XP > + If the executable name is not quoted, we have to use this search > loop here, > that in CreateProcess() is not sufficient because it does not > handle shell links. */ > WCHAR buffer[MAX_PATH], xlpFile[MAX_PATH]; > - LPWSTR space, s; > + LPWSTR space; > > - LPWSTR beg = wszApplicationName/*sei_tmp.lpFile*/; > - for(s=beg; (space=strchrW(s, ' ')); s=space+1) { > - int idx = space-sei_tmp.lpFile; > - memcpy(buffer, sei_tmp.lpFile, idx * sizeof(WCHAR)); > + lstrcpynW(buffer, wszApplicationName, sizeof(buffer)/sizeof(WCHAR)); > + while((space=strchrW(buffer, ' '))) > + { > + int idx = space-buffer; > buffer[idx] = '\0';
This will break the loop since you don't reset the buffer contents. Also the indentation is messed up, please fix your editor setup. -- Alexandre Julliard julli...@winehq.org