Index: gnc-file.c =================================================================== --- gnc-file.c (Revision 14861) +++ gnc-file.c (Arbeitskopie) @@ -416,8 +416,12 @@ break; case ERR_FILEIO_FILE_NOT_FOUND: - fmt = _("The file %s could not be found."); - gnc_error_dialog (parent, fmt, newfile); + if (type == GNC_FILE_DIALOG_SAVE) { + uh_oh = FALSE; + } else { + fmt = _("The file %s could not be found."); + gnc_error_dialog (parent, fmt, newfile); + } break; case ERR_FILEIO_FILE_TOO_OLD: @@ -1068,7 +1072,8 @@ } /* if the database doesn't exist, ask the user ... */ - else if ((ERR_BACKEND_NO_SUCH_DB == io_err) || + else if ((ERR_FILEIO_FILE_NOT_FOUND == io_err) || + (ERR_BACKEND_NO_SUCH_DB == io_err) || (ERR_SQL_DB_TOO_OLD == io_err)) { if (FALSE == show_session_error (io_err, newfile, GNC_FILE_DIALOG_SAVE)) Index: gnc-backend-file.c =================================================================== --- gnc-backend-file.c (Revision 14861) +++ gnc-backend-file.c (Arbeitskopie) @@ -230,7 +230,7 @@ /* Now check whether we can stat(2) the file itself */ rc = stat (be->fullpath, &statbuf); - if (rc != 0) + if ((rc != 0) && (!create_if_nonexistent)) { /* Error on stat means the file doesn't exist */ qof_backend_set_error (be_start, ERR_FILEIO_FILE_NOT_FOUND);