When trying to compile SeaMonkey with Visual Studio 2012, the builds stops when trying to compile msgMapiImp.cpp because of those two errors:
Returning an nserror in a function with a LONG return type
Returning an nserror in a function with a HRESULT return type (says the compiler)
Previous versions of VC don't support strongly typed enums so they silently cast nsresult to LONG/HRESULT/whatever. Anyway, we shouldn't be returning NS_ERROR_FAILURE, we should be using Microsoft error codes.
Something like MAPI_E_FAILURE ?
Created attachment 736909 [details] [diff] [review]
This patch fixes the build, but still need to check if everything works as expected. I'm not sure what the meaning of the "// get the singelton obj" comment is in that context (when returning because of an error).
Created attachment 736914 [details] [diff] [review]
This one is the correct patch, mixed up two patches there.
*** Bug 862652 has been marked as a duplicate of this bug. ***
Comment on attachment 736914 [details] [diff] [review]
Looks good to me.