Author: gsim
Date: Tue Jan 16 04:00:22 2007
New Revision: 496665

URL: http://svn.apache.org/viewvc?view=rev&rev=496665
Log:
Some basic additional error logging of framing errors. 


Modified:
    incubator/qpid/trunk/qpid/cpp/lib/common/framing/Value.cpp
    incubator/qpid/trunk/qpid/cpp/lib/common/sys/apr/LFSessionContext.cpp

Modified: incubator/qpid/trunk/qpid/cpp/lib/common/framing/Value.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/lib/common/framing/Value.cpp?view=diff&rev=496665&r1=496664&r2=496665
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/lib/common/framing/Value.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/lib/common/framing/Value.cpp Tue Jan 16 
04:00:22 2007
@@ -22,6 +22,7 @@
 #include <Buffer.h>
 #include <FieldTable.h>
 #include <QpidError.h>
+#include <sstream>
 
 namespace qpid {
 namespace framing {
@@ -85,7 +86,9 @@
         value.reset(new FieldTableValue());
        break;
       default:
-       THROW_QPID_ERROR(FRAMING_ERROR, "Unknown field table value type");
+        std::stringstream out;
+        out << "Unknown field table value type: " << type;
+       THROW_QPID_ERROR(FRAMING_ERROR, out.str());
     }
     value->decode(buffer);
     return value;

Modified: incubator/qpid/trunk/qpid/cpp/lib/common/sys/apr/LFSessionContext.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/lib/common/sys/apr/LFSessionContext.cpp?view=diff&rev=496665&r1=496664&r2=496665
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/lib/common/sys/apr/LFSessionContext.cpp 
(original)
+++ incubator/qpid/trunk/qpid/cpp/lib/common/sys/apr/LFSessionContext.cpp Tue 
Jan 16 04:00:22 2007
@@ -58,9 +58,15 @@
     in.flip();
     if(initiated){
         AMQFrame frame;
-        while(frame.decode(in)){
-            if(debug) log("RECV", &frame);
-            handler->received(&frame);
+        try{
+            while(frame.decode(in)){
+                if(debug) log("RECV", &frame);
+                handler->received(&frame);
+            }
+        }catch(QpidError error){
+            std::cout << "Error [" << error.code << "] " << error.msg
+                      << " (" << error.location.file << ":" << 
error.location.line
+                      << ")" << std::endl;
         }
     }else{
         ProtocolInitiation protocolInit;


Reply via email to