Commit b9c56b2f authored by Dick Hollenbeck's avatar Dick Hollenbeck

FIX: avoid use of wxFileName::GetModificationTime() when it can fail.

parent fdd9b798
...@@ -65,7 +65,7 @@ public: ...@@ -65,7 +65,7 @@ public:
/// For use with _() function on wx 2.8: /// For use with _() function on wx 2.8:
UTF8( const wchar_t* txt ); UTF8( const wchar_t* txt );
explicit UTF8( const std::string& o ) : UTF8( const std::string& o ) :
std::string( o ) std::string( o )
{ {
} }
......
...@@ -93,9 +93,6 @@ typedef boost::optional<double> opt_double; ...@@ -93,9 +93,6 @@ typedef boost::optional<double> opt_double;
typedef boost::optional<bool> opt_bool; typedef boost::optional<bool> opt_bool;
const wxChar* traceEaglePlugin = wxT( "KicadEaglePlugin" );
/// segment (element) of our XPATH into the Eagle XML document tree in PTREE form. /// segment (element) of our XPATH into the Eagle XML document tree in PTREE form.
struct TRIPLET struct TRIPLET
{ {
...@@ -2741,6 +2738,18 @@ wxDateTime EAGLE_PLUGIN::getModificationTime( const wxString& aPath ) ...@@ -2741,6 +2738,18 @@ wxDateTime EAGLE_PLUGIN::getModificationTime( const wxString& aPath )
{ {
wxFileName fn( aPath ); wxFileName fn( aPath );
// Do not call wxFileName::GetModificationTime() on a non-existent file, because
// if it fails, wx's implementation calls the crap wxLogSysError() which
// eventually infects our UI with an unwanted popup window, so don't let it fail.
if( !fn.IsFileReadable() )
{
wxString msg = wxString::Format(
_( "File '%s' is not readable." ),
GetChars( aPath ) );
THROW_IO_ERROR( msg );
}
/* /*
// update the writable flag while we have a wxFileName, in a network this // update the writable flag while we have a wxFileName, in a network this
// is possibly quite dynamic anyway. // is possibly quite dynamic anyway.
...@@ -2770,8 +2779,6 @@ void EAGLE_PLUGIN::cacheLib( const wxString& aLibPath ) ...@@ -2770,8 +2779,6 @@ void EAGLE_PLUGIN::cacheLib( const wxString& aLibPath )
if( aLibPath != m_lib_path || load ) if( aLibPath != m_lib_path || load )
{ {
wxLogTrace( traceEaglePlugin, wxT( "Loading '%s'" ), TO_UTF8( aLibPath ) );
PTREE doc; PTREE doc;
LOCALE_IO toggle; // toggles on, then off, the C locale. LOCALE_IO toggle; // toggles on, then off, the C locale.
......
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