glom r1831 - in branches/glom-1-8: . glom/libglom/document



Author: murrayc
Date: Fri Jan  2 11:28:34 2009
New Revision: 1831
URL: http://svn.gnome.org/viewvc/glom?rev=1831&view=rev

Log:
2009-01-02  Armin Burgmeier  <armin openismus com>

* glom/libglom/document/document_glom.cc (set_table_fields): Fixed
logic so that the document is set to be modified when the new fields
differ from the old fields, not when they compare equal.

* glom/libglom/document/document_glom.h: Also copy the m_info member
in DocumentTableInfo's copy constructor and assignment operator.
This should fix bug #566102 (Iain Lane)

Modified:
   branches/glom-1-8/ChangeLog
   branches/glom-1-8/glom/libglom/document/document_glom.cc
   branches/glom-1-8/glom/libglom/document/document_glom.h

Modified: branches/glom-1-8/glom/libglom/document/document_glom.cc
==============================================================================
--- branches/glom-1-8/glom/libglom/document/document_glom.cc	(original)
+++ branches/glom-1-8/glom/libglom/document/document_glom.cc	Fri Jan  2 11:28:34 2009
@@ -798,7 +798,7 @@
     }
 
     DocumentTableInfo& info = get_table_info_with_add(table_name);
-    const bool will_change = (info.m_fields == vecFields); //TODO: Does this do a deep comparison?
+    const bool will_change = (info.m_fields != vecFields); //TODO: Does this do a deep comparison?
     info.m_fields = vecFields;
 
     set_modified(will_change);

Modified: branches/glom-1-8/glom/libglom/document/document_glom.h
==============================================================================
--- branches/glom-1-8/glom/libglom/document/document_glom.h	(original)
+++ branches/glom-1-8/glom/libglom/document/document_glom.h	Fri Jan  2 11:28:34 2009
@@ -476,7 +476,8 @@
 
     //TODO: Avoid the use of this:
     DocumentTableInfo(const DocumentTableInfo& src)
-      : m_fields(src.m_fields),
+      : m_info(src.m_info),
+        m_fields(src.m_fields),
         m_relationships(src.m_relationships),
         m_layouts(src.m_layouts),
         m_reports(src.m_reports),
@@ -493,6 +494,7 @@
     //TODO: Avoid the use of this:
     DocumentTableInfo& operator=(const DocumentTableInfo& src)
     {
+      m_info = src.m_info;
       m_fields = src.m_fields;
       m_relationships = src.m_relationships;
       m_layouts = src.m_layouts;



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