Bug 461754 - Wrong error handling in nsMIMEInfoWin.cpp; r=benjamin
--- a/uriloader/exthandler/win/nsMIMEInfoWin.cpp
+++ b/uriloader/exthandler/win/nsMIMEInfoWin.cpp
@@ -118,21 +118,21 @@ nsMIMEInfoWin::LaunchWithFile(nsIFile* a
// executable is rundll32, everything else is a list of parameters,
// including the dll handler.
nsCOMPtr<nsILocalFile> locFile(do_QueryInterface(aFile));
if (!GetDllLaunchInfo(executable, locFile, args, PR_FALSE))
return NS_ERROR_INVALID_ARG;
- PRUint32 result = (PRUint32)
+ int result = (int)
::ShellExecuteW(NULL, NULL, L"rundll32.exe", args.get(),
NULL, SW_SHOWNORMAL);
// Returns a value greater than 32 if successful. See msdn.
- if (result >= 32)
+ if (result > 32)
return NS_OK;
switch (result) {
case 0:
case SE_ERR_OOM:
return NS_ERROR_OUT_OF_MEMORY;
case ERROR_FILE_NOT_FOUND:
return NS_ERROR_FILE_NOT_FOUND;