[gq-commit] gq/src schema.c,1.20,1.21
Status: Beta
Brought to you by:
sur5r
From: <sta...@us...> - 2003-10-13 07:27:48
|
Update of /cvsroot/gqclient/gq/src In directory sc8-pr-cvs1:/tmp/cvs-serv15612 Modified Files: schema.c Log Message: * Introduced an error context during schema loading. That way there is at least a hint to WHAT the problem is. I ended up with dozens of error popups due to a missing default schema server without ANY indication of what the problem REALLY was. Index: schema.c =================================================================== RCS file: /cvsroot/gqclient/gq/src/schema.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** schema.c 11 Oct 2003 09:14:07 -0000 1.20 --- schema.c 13 Oct 2003 07:27:44 -0000 1.21 *************** *** 41,44 **** --- 41,45 ---- #include "i18n.h" #include "debug.h" + #include "errorchain.h" *************** *** 62,83 **** ss = get_server_schema(server); if(ss == NULL) { ! /* server didn't publish a schema, try the last resort schemaserver */ server = server_by_name(config->schemaserver); if(server == NULL) { ! set_normalcursor(); ! return(NULL); } if(server->ss) { ! set_normalcursor(); ! return(server->ss); } ss = get_server_schema(server); } set_normalcursor(); - return(ss); } --- 63,91 ---- ss = get_server_schema(server); if(ss == NULL) { + /* server didn't publish a schema, try the last resort + schemaserver */ ! int ec = error_new_context(_("Using schema from last-resort schemaserver")); server = server_by_name(config->schemaserver); if(server == NULL) { ! error_push(ec, _("Cannot find last-resort schema server")); ! ss = NULL; ! goto done; } if(server->ss) { ! ss = server->ss; ! goto done; } ss = get_server_schema(server); + if (ss == NULL) { + error_push(ec, _("Cannot obtain schema from last-resort schema server")); + } + done: + error_flush(ec); } set_normalcursor(); return(ss); } |