diff --git a/eeschema/libedit/libedit.cpp b/eeschema/libedit/libedit.cpp index 77cd1f6e2d..7d04d875da 100644 --- a/eeschema/libedit/libedit.cpp +++ b/eeschema/libedit/libedit.cpp @@ -726,8 +726,11 @@ bool LIB_EDIT_FRAME::saveLibrary( const wxString& aLibrary, bool aNewFile ) fn = prj.SchSymbolLibTable()->GetFullURI( aLibrary ); } + wxFileName docFileName = fn; + docFileName.SetExt( DOC_EXT ); + // Verify the user has write privileges before attempting to save the library file. - if( !IsWritable( fn ) ) + if( !IsWritable( fn ) || !IsWritable( docFileName ) ) return false; ClearMsgPanel(); @@ -736,9 +739,6 @@ bool LIB_EDIT_FRAME::saveLibrary( const wxString& aLibrary, bool aNewFile ) if( !backupFile( fn, "bak" ) ) return false; - wxFileName docFileName = fn; - docFileName.SetExt( DOC_EXT ); - // Copy .dcm file to .bck. if( !backupFile( docFileName, "bck" ) ) return false;