From 61131125c2c76e7972e385f0c05d6c0a70b8c35d Mon Sep 17 00:00:00 2001 From: dockes Date: Fri, 7 Sep 2007 08:05:19 +0000 Subject: [PATCH] improve purge error message printing --- src/rcldb/rcldb.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/rcldb/rcldb.cpp b/src/rcldb/rcldb.cpp index 3577daba..e0ea2e26 100644 --- a/src/rcldb/rcldb.cpp +++ b/src/rcldb/rcldb.cpp @@ -1,5 +1,5 @@ #ifndef lint -static char rcsid[] = "@(#$Id: rcldb.cpp,v 1.122 2007-07-12 17:28:11 dockes Exp $ (C) 2004 J.F.Dockes"; +static char rcsid[] = "@(#$Id: rcldb.cpp,v 1.123 2007-09-07 08:05:19 dockes Exp $ (C) 2004 J.F.Dockes"; #endif /* * This program is free software; you can redistribute it and/or modify @@ -179,8 +179,16 @@ bool Native::subDocs(const string &hash, vector& docids) } catch (const Xapian::Error &e) { ermsg = e.get_msg().c_str(); break; + } catch (const string &s) { + ermsg = s; + if (ermsg.empty()) + ermsg = "Empty error message"; + } catch (const char *s) { + ermsg = s ? s : ""; + if (ermsg.empty()) + ermsg = "Empty error message"; } catch (...) { - ermsg= "Unknown error"; + ermsg= "Unknown xapian error (not Xapian::Error or string)"; break; } }