nemiver r799 - in trunk: . src/dbgengine



Author: dodji
Date: Sun May  4 19:54:20 2008
New Revision: 799
URL: http://svn.gnome.org/viewvc/nemiver?rev=799&view=rev

Log:
[gdbmi parser] allow reading empty lists

When trying to read either empty lists of results or values, the current
code throws exceptions. Don't do that.


Modified:
   trunk/ChangeLog
   trunk/src/dbgengine/nmv-gdbmi-parser.h

Modified: trunk/src/dbgengine/nmv-gdbmi-parser.h
==============================================================================
--- trunk/src/dbgengine/nmv-gdbmi-parser.h	(original)
+++ trunk/src/dbgengine/nmv-gdbmi-parser.h	Sun May  4 19:54:20 2008
@@ -256,7 +256,8 @@
 
     void get_result_content (list<GDBMIResultSafePtr> &a_list) const
     {
-        THROW_IF_FAIL (!empty () && content_type () == RESULT_TYPE) ;
+        if (empty ()) {return;}
+        THROW_IF_FAIL (content_type () == RESULT_TYPE) ;
         list<boost::variant<GDBMIResultSafePtr,GDBMIValueSafePtr> >::const_iterator it;
         for (it= m_content.begin () ; it!= m_content.end () ; ++it) {
             a_list.push_back (boost::get<GDBMIResultSafePtr> (*it)) ;
@@ -265,7 +266,8 @@
 
     void get_value_content (list<GDBMIValueSafePtr> &a_list) const
     {
-        THROW_IF_FAIL (!empty () && content_type () == VALUE_TYPE) ;
+        if (empty ()) {return;}
+        THROW_IF_FAIL (content_type () == VALUE_TYPE) ;
         list<boost::variant<GDBMIResultSafePtr,GDBMIValueSafePtr> >::const_iterator it;
         for (it= m_content.begin () ; it!= m_content.end () ; ++it) {
             a_list.push_back (boost::get<GDBMIValueSafePtr> (*it)) ;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]