Commit d1d1e2b5 authored by Wayne Stambaugh's avatar Wayne Stambaugh

Lots of Coverity scan error fixes.

parent bd5d4682
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
/* /*
* This program source code file is part of KiCad, a free EDA CAD application. * This program source code file is part of KiCad, a free EDA CAD application.
* *
* Copyright (C) 1992-2012 KiCad Developers, see AUTHORS.txt for contributors. * Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License * modify it under the terms of the GNU General Public License
...@@ -83,6 +83,8 @@ S3D_MASTER::S3D_MASTER( EDA_ITEM* aParent ) : ...@@ -83,6 +83,8 @@ S3D_MASTER::S3D_MASTER( EDA_ITEM* aParent ) :
m_use_modelfile_ambientIntensity = true; m_use_modelfile_ambientIntensity = true;
m_use_modelfile_transparency = true; m_use_modelfile_transparency = true;
m_use_modelfile_shininess = true; m_use_modelfile_shininess = true;
m_loadTransparentObjects = true;
m_loadNonTransparentObjects = true;
} }
......
...@@ -53,6 +53,10 @@ VRML2_MODEL_PARSER::VRML2_MODEL_PARSER( S3D_MASTER* aMaster ) : ...@@ -53,6 +53,10 @@ VRML2_MODEL_PARSER::VRML2_MODEL_PARSER( S3D_MASTER* aMaster ) :
S3D_MODEL_PARSER( aMaster ) S3D_MODEL_PARSER( aMaster )
{ {
m_model = NULL; m_model = NULL;
m_file = NULL;
m_Materials = NULL;
m_normalPerVertex = true;
colorPerVertex = true;
} }
......
...@@ -81,6 +81,8 @@ LAYER_BOX_SELECTOR::LAYER_BOX_SELECTOR( wxWindow* parent, wxWindowID id, ...@@ -81,6 +81,8 @@ LAYER_BOX_SELECTOR::LAYER_BOX_SELECTOR( wxWindow* parent, wxWindowID id,
{ {
if( choices != NULL ) if( choices != NULL )
ResyncBitmapOnly(); ResyncBitmapOnly();
m_hotkeys = NULL;
} }
......
...@@ -379,7 +379,7 @@ void FP_LIB_TABLE::Parse( FP_LIB_TABLE_LEXER* in ) throw( IO_ERROR, PARSE_ERROR ...@@ -379,7 +379,7 @@ void FP_LIB_TABLE::Parse( FP_LIB_TABLE_LEXER* in ) throw( IO_ERROR, PARSE_ERROR
void FP_LIB_TABLE::Format( OUTPUTFORMATTER* out, int nestLevel ) const void FP_LIB_TABLE::Format( OUTPUTFORMATTER* out, int nestLevel ) const
throw( IO_ERROR ) throw( IO_ERROR, boost::interprocess::lock_exception )
{ {
out->Print( nestLevel, "(fp_lib_table\n" ); out->Print( nestLevel, "(fp_lib_table\n" );
......
...@@ -1050,7 +1050,7 @@ const wxString PART_LIBS::CacheName( const wxString& aFullProjectFilename ) ...@@ -1050,7 +1050,7 @@ const wxString PART_LIBS::CacheName( const wxString& aFullProjectFilename )
} }
void PART_LIBS::LoadAllLibraries( PROJECT* aProject ) throw( IO_ERROR ) void PART_LIBS::LoadAllLibraries( PROJECT* aProject ) throw( IO_ERROR, boost::bad_pointer )
{ {
wxFileName fn; wxFileName fn;
wxString filename; wxString filename;
......
...@@ -152,7 +152,7 @@ public: ...@@ -152,7 +152,7 @@ public:
* loads all of the project's libraries into this container, which should * loads all of the project's libraries into this container, which should
* be cleared before calling it. * be cleared before calling it.
*/ */
void LoadAllLibraries( PROJECT* aProject ) throw( IO_ERROR ); void LoadAllLibraries( PROJECT* aProject ) throw( IO_ERROR, boost::bad_pointer );
/** /**
* Function LibNamesAndPaths * Function LibNamesAndPaths
......
...@@ -785,6 +785,8 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::setRowItem( int aFieldNdx, const SCH_FI ...@@ -785,6 +785,8 @@ void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::setRowItem( int aFieldNdx, const SCH_FI
void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copySelectedFieldToPanel() void DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copySelectedFieldToPanel()
{ {
wxCHECK_RET( m_cmp != NULL, wxT( "Component pointer not initialized." ) );
unsigned fieldNdx = getSelectedFieldNdx(); unsigned fieldNdx = getSelectedFieldNdx();
if( fieldNdx >= m_FieldsBuf.size() ) // traps the -1 case too if( fieldNdx >= m_FieldsBuf.size() ) // traps the -1 case too
......
This diff is collapsed.
...@@ -356,7 +356,8 @@ public: ...@@ -356,7 +356,8 @@ public:
* @param nestLevel is the indentation level to base all lines of the output. * @param nestLevel is the indentation level to base all lines of the output.
* Actual indentation will be 2 spaces for each nestLevel. * Actual indentation will be 2 spaces for each nestLevel.
*/ */
void Format( OUTPUTFORMATTER* out, int nestLevel ) const throw( IO_ERROR ); void Format( OUTPUTFORMATTER* out, int nestLevel ) const
throw( IO_ERROR, boost::interprocess::lock_exception );
/** /**
* Function GetLogicalLibs * Function GetLogicalLibs
......
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
#include <vector> #include <vector>
#include <boost/interprocess/exceptions.hpp>
#include <draw_frame.h> #include <draw_frame.h>
#include <base_struct.h> #include <base_struct.h>
...@@ -103,7 +104,7 @@ protected: ...@@ -103,7 +104,7 @@ protected:
* occurs while reading footprint library files. * occurs while reading footprint library files.
*/ */
MODULE* loadFootprint( const FPID& aFootprintId ) MODULE* loadFootprint( const FPID& aFootprintId )
throw( IO_ERROR, PARSE_ERROR ); throw( IO_ERROR, PARSE_ERROR, boost::interprocess::lock_exception );
public: public:
PCB_BASE_FRAME( KIWAY* aKiway, wxWindow* aParent, FRAME_T aFrameType, PCB_BASE_FRAME( KIWAY* aKiway, wxWindow* aParent, FRAME_T aFrameType,
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
using namespace NL_T; using namespace NL_T;
void KICAD_NETLIST_READER::LoadNetlist() throw ( IO_ERROR, PARSE_ERROR ) void KICAD_NETLIST_READER::LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer )
{ {
m_parser->Parse(); m_parser->Parse();
......
...@@ -35,8 +35,7 @@ ...@@ -35,8 +35,7 @@
#include <netlist_reader.h> #include <netlist_reader.h>
void LEGACY_NETLIST_READER::LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer )
void LEGACY_NETLIST_READER::LoadNetlist() throw ( IO_ERROR, PARSE_ERROR )
{ {
int state = 0; int state = 0;
bool is_comment = false; bool is_comment = false;
......
...@@ -323,7 +323,7 @@ MODULE* PCB_BASE_FRAME::LoadFootprint( const FPID& aFootprintId ) ...@@ -323,7 +323,7 @@ MODULE* PCB_BASE_FRAME::LoadFootprint( const FPID& aFootprintId )
MODULE* PCB_BASE_FRAME::loadFootprint( const FPID& aFootprintId ) MODULE* PCB_BASE_FRAME::loadFootprint( const FPID& aFootprintId )
throw( IO_ERROR, PARSE_ERROR ) throw( IO_ERROR, PARSE_ERROR, boost::interprocess::lock_exception )
{ {
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs(); FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
......
...@@ -183,7 +183,7 @@ public: ...@@ -183,7 +183,7 @@ public:
* @throw IO_ERROR if a file IO error occurs. * @throw IO_ERROR if a file IO error occurs.
* @throw PARSE_ERROR if an error occurs while parsing the file. * @throw PARSE_ERROR if an error occurs while parsing the file.
*/ */
virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR ) = 0; virtual void LoadNetlist() throw( IO_ERROR, PARSE_ERROR, boost::bad_pointer ) = 0;
/** /**
* Function GetLineReader() * Function GetLineReader()
...@@ -277,7 +277,7 @@ public: ...@@ -277,7 +277,7 @@ public:
* @throw IO_ERROR if a file IO error occurs. * @throw IO_ERROR if a file IO error occurs.
* @throw PARSE_ERROR if an error occurs while parsing the file. * @throw PARSE_ERROR if an error occurs while parsing the file.
*/ */
virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR ); virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer );
}; };
...@@ -392,7 +392,7 @@ public: ...@@ -392,7 +392,7 @@ public:
delete m_parser; delete m_parser;
} }
virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR ); virtual void LoadNetlist() throw ( IO_ERROR, PARSE_ERROR, boost::bad_pointer );
}; };
......
...@@ -168,7 +168,7 @@ bool PCB_PARSER::parseBool() throw( PARSE_ERROR ) ...@@ -168,7 +168,7 @@ bool PCB_PARSER::parseBool() throw( PARSE_ERROR )
} }
wxPoint PCB_PARSER::parseXY() throw( PARSE_ERROR ) wxPoint PCB_PARSER::parseXY() throw( PARSE_ERROR, IO_ERROR )
{ {
if( CurTok() != T_LEFT ) if( CurTok() != T_LEFT )
NeedLEFT(); NeedLEFT();
...@@ -200,7 +200,7 @@ void PCB_PARSER::parseXY( int* aX, int* aY ) throw( PARSE_ERROR ) ...@@ -200,7 +200,7 @@ void PCB_PARSER::parseXY( int* aX, int* aY ) throw( PARSE_ERROR )
} }
void PCB_PARSER::parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR ) void PCB_PARSER::parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR, IO_ERROR )
{ {
wxCHECK_RET( CurTok() == T_effects, wxCHECK_RET( CurTok() == T_effects,
wxT( "Cannot parse " ) + GetTokenString( CurTok() ) + wxT( " as EDA_TEXT." ) ); wxT( "Cannot parse " ) + GetTokenString( CurTok() ) + wxT( " as EDA_TEXT." ) );
......
...@@ -172,7 +172,7 @@ class PCB_PARSER : public PCB_LEXER ...@@ -172,7 +172,7 @@ class PCB_PARSER : public PCB_LEXER
* @throw PARSE_ERROR if the coordinate pair syntax is incorrect. * @throw PARSE_ERROR if the coordinate pair syntax is incorrect.
* @return A wxPoint object containing the coordinate pair. * @return A wxPoint object containing the coordinate pair.
*/ */
wxPoint parseXY() throw( PARSE_ERROR ); wxPoint parseXY() throw( PARSE_ERROR, IO_ERROR );
void parseXY( int* aX, int* aY ) throw( PARSE_ERROR ); void parseXY( int* aX, int* aY ) throw( PARSE_ERROR );
...@@ -183,7 +183,7 @@ class PCB_PARSER : public PCB_LEXER ...@@ -183,7 +183,7 @@ class PCB_PARSER : public PCB_LEXER
* @throw PARSE_ERROR if the text syntax is not valid. * @throw PARSE_ERROR if the text syntax is not valid.
* @param aText A point to the #EDA_TEXT object to save the parsed settings into. * @param aText A point to the #EDA_TEXT object to save the parsed settings into.
*/ */
void parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR ); void parseEDA_TEXT( EDA_TEXT* aText ) throw( PARSE_ERROR, IO_ERROR );
S3D_MASTER* parse3DModel() throw( PARSE_ERROR, IO_ERROR ); S3D_MASTER* parse3DModel() throw( PARSE_ERROR, IO_ERROR );
...@@ -227,7 +227,7 @@ class PCB_PARSER : public PCB_LEXER ...@@ -227,7 +227,7 @@ class PCB_PARSER : public PCB_LEXER
return KiROUND( parseDouble( aExpected ) * IU_PER_MM ); return KiROUND( parseDouble( aExpected ) * IU_PER_MM );
} }
inline int parseBoardUnits( PCB_KEYS_T::T aToken ) throw( PARSE_ERROR ) inline int parseBoardUnits( PCB_KEYS_T::T aToken ) throw( PARSE_ERROR, IO_ERROR )
{ {
return parseBoardUnits( GetTokenText( aToken ) ); return parseBoardUnits( GetTokenText( aToken ) );
} }
......
...@@ -517,13 +517,16 @@ PNS_SHOVE::SHOVE_STATUS PNS_SHOVE::pushVia( PNS_VIA* aVia, const VECTOR2I& aForc ...@@ -517,13 +517,16 @@ PNS_SHOVE::SHOVE_STATUS PNS_SHOVE::pushVia( PNS_VIA* aVia, const VECTOR2I& aForc
m_currentNode->Remove( aVia ); m_currentNode->Remove( aVia );
m_currentNode->Add ( pushedVia ); m_currentNode->Add ( pushedVia );
#ifdef DEBUG
m_logger.Log( aVia, 0, "obstacle-via" );
#endif
if( aVia->BelongsTo( m_currentNode ) ) if( aVia->BelongsTo( m_currentNode ) )
delete aVia; delete aVia;
pushedVia->SetRank( aCurrentRank - 1 ); pushedVia->SetRank( aCurrentRank - 1 );
#ifdef DEBUG #ifdef DEBUG
m_logger.Log( aVia, 0, "obstacle-via" );
m_logger.Log( pushedVia, 1, "pushed-via" ); m_logger.Log( pushedVia, 1, "pushed-via" );
#endif #endif
......
...@@ -255,7 +255,7 @@ void SPECCTRA_DB::readTIME( time_t* time_stamp ) throw( IO_ERROR ) ...@@ -255,7 +255,7 @@ void SPECCTRA_DB::readTIME( time_t* time_stamp ) throw( IO_ERROR )
} }
void SPECCTRA_DB::LoadPCB( const wxString& filename ) throw( IO_ERROR ) void SPECCTRA_DB::LoadPCB( const wxString& filename ) throw( IO_ERROR, boost::bad_pointer )
{ {
FILE_LINE_READER reader( filename ); FILE_LINE_READER reader( filename );
...@@ -274,7 +274,7 @@ void SPECCTRA_DB::LoadPCB( const wxString& filename ) throw( IO_ERROR ) ...@@ -274,7 +274,7 @@ void SPECCTRA_DB::LoadPCB( const wxString& filename ) throw( IO_ERROR )
} }
void SPECCTRA_DB::LoadSESSION( const wxString& filename ) throw( IO_ERROR ) void SPECCTRA_DB::LoadSESSION( const wxString& filename ) throw( IO_ERROR, boost::bad_pointer )
{ {
FILE_LINE_READER reader( filename ); FILE_LINE_READER reader( filename );
...@@ -1748,7 +1748,7 @@ void SPECCTRA_DB::doLAYER_RULE( LAYER_RULE* growth ) throw( IO_ERROR ) ...@@ -1748,7 +1748,7 @@ void SPECCTRA_DB::doLAYER_RULE( LAYER_RULE* growth ) throw( IO_ERROR )
} }
void SPECCTRA_DB::doPLACE( PLACE* growth ) throw( IO_ERROR ) void SPECCTRA_DB::doPLACE( PLACE* growth ) throw( IO_ERROR, boost::bad_pointer )
{ {
T tok = NextTok(); T tok = NextTok();
......
...@@ -3717,7 +3717,7 @@ class SPECCTRA_DB : public SPECCTRA_LEXER ...@@ -3717,7 +3717,7 @@ class SPECCTRA_DB : public SPECCTRA_LEXER
void doLAYER_RULE( LAYER_RULE* growth ) throw( IO_ERROR ); void doLAYER_RULE( LAYER_RULE* growth ) throw( IO_ERROR );
void doCLASSES( CLASSES* growth ) throw( IO_ERROR ); void doCLASSES( CLASSES* growth ) throw( IO_ERROR );
void doGRID( GRID* growth ) throw( IO_ERROR ); void doGRID( GRID* growth ) throw( IO_ERROR );
void doPLACE( PLACE* growth ) throw( IO_ERROR ); void doPLACE( PLACE* growth ) throw( IO_ERROR, boost::bad_pointer );
void doCOMPONENT( COMPONENT* growth ) throw( IO_ERROR, boost::bad_pointer ); void doCOMPONENT( COMPONENT* growth ) throw( IO_ERROR, boost::bad_pointer );
void doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR, boost::bad_pointer ); void doPLACEMENT( PLACEMENT* growth ) throw( IO_ERROR, boost::bad_pointer );
void doPROPERTIES( PROPERTIES* growth ) throw( IO_ERROR ); void doPROPERTIES( PROPERTIES* growth ) throw( IO_ERROR );
...@@ -3895,7 +3895,7 @@ public: ...@@ -3895,7 +3895,7 @@ public:
* @param filename The name of the dsn file to load. * @param filename The name of the dsn file to load.
* @throw IO_ERROR if there is a lexer or parser error. * @throw IO_ERROR if there is a lexer or parser error.
*/ */
void LoadPCB( const wxString& filename ) throw( IO_ERROR ); void LoadPCB( const wxString& filename ) throw( IO_ERROR, boost::bad_pointer );
/** /**
* Function LoadSESSION * Function LoadSESSION
...@@ -3907,7 +3907,7 @@ public: ...@@ -3907,7 +3907,7 @@ public:
* @param filename The name of the dsn file to load. * @param filename The name of the dsn file to load.
* @throw IO_ERROR if there is a lexer or parser error. * @throw IO_ERROR if there is a lexer or parser error.
*/ */
void LoadSESSION( const wxString& filename ) throw( IO_ERROR ); void LoadSESSION( const wxString& filename ) throw( IO_ERROR, boost::bad_pointer );
void ThrowIOError( const wxString& fmt, ... ) throw( IO_ERROR ); void ThrowIOError( const wxString& fmt, ... ) throw( IO_ERROR );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment