mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-30 19:03:16 +03:00
De-duplicate some error-output code in shell.c.in as part of tracking down the cause of [forum:5647ca2af1|forum post 5647ca2af1].
FossilOrigin-Name: fd5904495e0c775174f9380bc6877fb9def3d30dec1c9315979ad4503a18d70b
This commit is contained in:
@ -6343,12 +6343,17 @@ static int shell_dbinfo_command(ShellState *p, int nArg, char **azArg){
|
||||
}
|
||||
#endif /* SQLITE_SHELL_HAVE_RECOVER */
|
||||
|
||||
/*
|
||||
** Print the given string as an error message.
|
||||
*/
|
||||
static void shellEmitError(const char *zErr){
|
||||
eputf("Error: %s\n", zErr);
|
||||
}
|
||||
/*
|
||||
** Print the current sqlite3_errmsg() value to stderr and return 1.
|
||||
*/
|
||||
static int shellDatabaseError(sqlite3 *db){
|
||||
const char *zErr = sqlite3_errmsg(db);
|
||||
eputf("Error: %s\n", zErr);
|
||||
shellEmitError(sqlite3_errmsg(db));
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -6893,7 +6898,7 @@ static int arErrorMsg(ArCommand *pAr, const char *zFmt, ...){
|
||||
va_start(ap, zFmt);
|
||||
z = sqlite3_vmprintf(zFmt, ap);
|
||||
va_end(ap);
|
||||
eputf("Error: %s\n", z);
|
||||
shellEmitError(z);
|
||||
if( pAr->fromCmdLine ){
|
||||
eputz("Use \"-A\" for more help\n");
|
||||
}else{
|
||||
@ -8124,7 +8129,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
open_db(p, 0);
|
||||
pBackup = sqlite3_backup_init(pDest, "main", p->db, zDb);
|
||||
if( pBackup==0 ){
|
||||
eputf("Error: %s\n", sqlite3_errmsg(pDest));
|
||||
shellDatabaseError(pDest);
|
||||
close_db(pDest);
|
||||
return 1;
|
||||
}
|
||||
@ -8133,7 +8138,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
if( rc==SQLITE_DONE ){
|
||||
rc = 0;
|
||||
}else{
|
||||
eputf("Error: %s\n", sqlite3_errmsg(pDest));
|
||||
shellDatabaseError(pDest);
|
||||
rc = 1;
|
||||
}
|
||||
close_db(pDest);
|
||||
@ -8309,7 +8314,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
open_db(p, 0);
|
||||
rc = sqlite3_prepare_v2(p->db, "PRAGMA database_list", -1, &pStmt, 0);
|
||||
if( rc ){
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
rc = 1;
|
||||
}else{
|
||||
while( sqlite3_step(pStmt)==SQLITE_ROW ){
|
||||
@ -9005,7 +9010,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
zSql = 0;
|
||||
if( rc ){
|
||||
if (pStmt) sqlite3_finalize(pStmt);
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
import_cleanup(&sCtx);
|
||||
rc = 1;
|
||||
goto meta_command_exit;
|
||||
@ -9049,7 +9054,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
sqlite3_free(zSql);
|
||||
zSql = 0;
|
||||
if( rc ){
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
if (pStmt) sqlite3_finalize(pStmt);
|
||||
import_cleanup(&sCtx);
|
||||
rc = 1;
|
||||
@ -9343,7 +9348,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
open_db(p, 0);
|
||||
rc = sqlite3_load_extension(p->db, zFile, zProc, &zErrMsg);
|
||||
if( rc!=SQLITE_OK ){
|
||||
eputf("Error: %s\n", zErrMsg);
|
||||
shellEmitError(zErrMsg);
|
||||
sqlite3_free(zErrMsg);
|
||||
rc = 1;
|
||||
}
|
||||
@ -9965,7 +9970,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
open_db(p, 0);
|
||||
pBackup = sqlite3_backup_init(p->db, zDb, pSrc, "main");
|
||||
if( pBackup==0 ){
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
close_db(pSrc);
|
||||
return 1;
|
||||
}
|
||||
@ -9983,7 +9988,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
eputz("Error: source database is busy\n");
|
||||
rc = 1;
|
||||
}else{
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
rc = 1;
|
||||
}
|
||||
close_db(pSrc);
|
||||
@ -10080,7 +10085,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
rc = sqlite3_prepare_v2(p->db, "SELECT name FROM pragma_database_list",
|
||||
-1, &pStmt, 0);
|
||||
if( rc ){
|
||||
eputf("Error: %s\n", sqlite3_errmsg(p->db));
|
||||
shellDatabaseError(p->db);
|
||||
sqlite3_finalize(pStmt);
|
||||
rc = 1;
|
||||
goto meta_command_exit;
|
||||
@ -10149,7 +10154,7 @@ static int do_meta_command(char *zLine, ShellState *p){
|
||||
freeText(&sSelect);
|
||||
}
|
||||
if( zErrMsg ){
|
||||
eputf("Error: %s\n", zErrMsg);
|
||||
shellEmitError(zErrMsg);
|
||||
sqlite3_free(zErrMsg);
|
||||
rc = 1;
|
||||
}else if( rc != SQLITE_OK ){
|
||||
@ -12728,7 +12733,7 @@ int SQLITE_CDECL wmain(int argc, wchar_t **wargv){
|
||||
open_db(&data, 0);
|
||||
rc = shell_exec(&data, z, &zErrMsg);
|
||||
if( zErrMsg!=0 ){
|
||||
eputf("Error: %s\n", zErrMsg);
|
||||
shellEmitError(zErrMsg);
|
||||
if( bail_on_error ) return rc!=0 ? rc : 1;
|
||||
}else if( rc!=0 ){
|
||||
eputf("Error: unable to process SQL \"%s\"\n", z);
|
||||
@ -12782,7 +12787,7 @@ int SQLITE_CDECL wmain(int argc, wchar_t **wargv){
|
||||
rc = shell_exec(&data, azCmd[i], &zErrMsg);
|
||||
if( zErrMsg || rc ){
|
||||
if( zErrMsg!=0 ){
|
||||
eputf("Error: %s\n", zErrMsg);
|
||||
shellEmitError(zErrMsg);
|
||||
}else{
|
||||
eputf("Error: unable to process SQL: %s\n", azCmd[i]);
|
||||
}
|
||||
|
Reference in New Issue
Block a user