summaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
Diffstat (limited to 'shell')
-rw-r--r--shell/source/win32/spsupp/COMOpenDocuments.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/shell/source/win32/spsupp/COMOpenDocuments.cxx b/shell/source/win32/spsupp/COMOpenDocuments.cxx
index 4d00b8de6c46..13fdc6f8e5f3 100644
--- a/shell/source/win32/spsupp/COMOpenDocuments.cxx
+++ b/shell/source/win32/spsupp/COMOpenDocuments.cxx
@@ -314,6 +314,8 @@ STDMETHODIMP COMOpenDocuments::CreateNewDocument2(
BSTR /*bstrDefaultSaveLocation*/, // A string that contains the path that specifies a suggested default location for saving the new document
VARIANT_BOOL* pbResult) // true if the document creation succeeds; otherwise false
{
+ if (!pbResult)
+ return E_POINTER;
// TODO: resolve the program from varProgID (nullptr -> default?)
HRESULT hr = LOStart(L"-n", bstrTemplateLocation, m_aObjectSafety.GetSafe_forUntrustedCaller() || m_aObjectSafety.GetSafe_forUntrustedData());
*pbResult = toVBool(SUCCEEDED(hr));
@@ -365,6 +367,8 @@ STDMETHODIMP COMOpenDocuments::ViewDocument3(
VARIANT /*varProgID*/, // An optional string that contains the ProgID of the application with which to open the document. If this argument is omitted, the default viewer for the document is used
VARIANT_BOOL *pbResult) // true if the document was successfully opened; otherwise false
{
+ if (!pbResult)
+ return E_POINTER;
// TODO: resolve the program from varProgID (nullptr -> default?)
HRESULT hr = LOStart(L"--view", bstrDocumentLocation, m_aObjectSafety.GetSafe_forUntrustedCaller() || m_aObjectSafety.GetSafe_forUntrustedData());
*pbResult = toVBool(SUCCEEDED(hr));
@@ -427,6 +431,8 @@ STDMETHODIMP COMOpenDocuments::EditDocument3(
VARIANT /*varProgID*/, // An optional string that contains the ProgID of the application with which to edit the document. If this argument is omitted, the default editor for the document is used
VARIANT_BOOL *pbResult) // true if the document was successfully opened; otherwise false
{
+ if (!pbResult)
+ return E_POINTER;
// TODO: resolve the program from varProgID (nullptr -> default?)
HRESULT hr = LOStart(L"-o", bstrDocumentLocation, m_aObjectSafety.GetSafe_forUntrustedCaller() || m_aObjectSafety.GetSafe_forUntrustedData());
*pbResult = toVBool(SUCCEEDED(hr));