Mercurial > vim
view src/VisVim/StdAfx.h @ 25336:92e7a55ab0ff v8.2.3205
patch 8.2.3205: Coverity reports a null pointer dereference
Commit: https://github.com/vim/vim/commit/1b862c466ba4242857eec581f67982d265005ef4
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jul 23 19:30:19 2021 +0200
patch 8.2.3205: Coverity reports a null pointer dereference
Problem: Coverity reports a null pointer dereference.
Solution: Change the logic to avoid Coverity gets confused.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 23 Jul 2021 19:45:05 +0200 |
parents | 3fc0f57ecb91 |
children |
line wrap: on
line source
// Stdafx.h : include file for standard system include files, // or project specific include files that are used frequently, but // are changed infrequently // #if !defined(AFX_STDAFX_H__AC72670E_2977_11D1_B2F3_006008040780__INCLUDED_) #define AFX_STDAFX_H__AC72670E_2977_11D1_B2F3_006008040780__INCLUDED_ #define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers #include <afxwin.h> // MFC core and standard components #include <afxdisp.h> #include <atlbase.h> //You may derive a class from CComModule and use it if you want to override //something, but do not change the name of _Module extern CComModule _Module; #include <atlcom.h> // Developer Studio Object Model #include <ObjModel\addauto.h> #include <ObjModel\appdefs.h> #include <ObjModel\appauto.h> #include <ObjModel\blddefs.h> #include <ObjModel\bldauto.h> #include <ObjModel\textdefs.h> #include <ObjModel\textauto.h> #include <ObjModel\dbgdefs.h> #include <ObjModel\dbgauto.h> ///////////////////////////////////////////////////////////////////////////// // Debugging support // Use VERIFY_OK around all calls to the Developer Studio objects which // you expect to return S_OK. // In DEBUG builds of your add-in, VERIFY_OK displays an ASSERT dialog box // if the expression returns an HRESULT other than S_OK. If the HRESULT // is a success code, the ASSERT box will display that HRESULT. If it // is a failure code, the ASSERT box will display that HRESULT plus the // error description string provided by the object which raised the error. // In RETAIL builds of your add-in, VERIFY_OK just evaluates the expression // and ignores the returned HRESULT. #ifdef _DEBUG void GetLastErrorDescription (CComBSTR & bstr); // Defined in VisVim.cpp #define VERIFY_OK(f) \ { \ HRESULT hr = (f); \ if (hr != S_OK) \ { \ if (FAILED(hr)) \ { \ CComBSTR bstr; \ GetLastErrorDescription(bstr); \ _RPTF2(_CRT_ASSERT, "Object call returned %lx\n\n%S", hr, (BSTR) bstr); \ } \ else \ _RPTF1(_CRT_ASSERT, "Object call returned %lx", hr); \ } \ } #else //_DEBUG #define VERIFY_OK(f) (f); #endif //_DEBUG //{{AFX_INSERT_LOCATION}} // Microsoft Developer Studio will insert additional declarations immediately before the previous line. #endif // !defined(AFX_STDAFX_H__AC72670E_2977_11D1_B2F3_006008040780__INCLUDED)