Author: reinhard
Date: 2010-10-20 15:35:55 -0500 (Wed, 20 Oct 2010)
New Revision: 10217

Modified:
   trunk/gnue-common/
   trunk/gnue-common/src/datasources/drivers/Base/ResultSet.py
Log:
If a new record is inserted into a result set with no current record, insert
the new record at the end.



Property changes on: trunk/gnue-common
___________________________________________________________________
Name: bzr:revision-info
   - timestamp: 2010-10-20 21:55:35.084000111 +0200
committer: Reinhard Müller <[email protected]>
properties: 
        branch-nick: common

   + timestamp: 2010-10-20 22:35:25.994999886 +0200
committer: Reinhard Müller <[email protected]>
properties: 
        branch-nick: common

Name: bzr:revision-id:v4
   - 3116 [email protected]
3117 [email protected]
3118 [email protected]
3119 [email protected]
3120 [email protected]
3121 [email protected]
3122 [email protected]
3123 [email protected]
3124 [email protected]
3125 [email protected]
3126 [email protected]
3127 [email protected]
3128 [email protected]
3129 [email protected]
3130 [email protected]
3131 [email protected]
3132 [email protected]

   + 3116 [email protected]
3117 [email protected]
3118 [email protected]
3119 [email protected]
3120 [email protected]
3121 [email protected]
3122 [email protected]
3123 [email protected]
3124 [email protected]
3125 [email protected]
3126 [email protected]
3127 [email protected]
3128 [email protected]
3129 [email protected]
3130 [email protected]
3131 [email protected]
3132 [email protected]
3133 [email protected]

Name: bzr:text-parents
   - src/datasources/drivers/Base/ResultSet.py  
[email protected]

   + 

Modified: trunk/gnue-common/src/datasources/drivers/Base/ResultSet.py
===================================================================
--- trunk/gnue-common/src/datasources/drivers/Base/ResultSet.py 2010-10-20 
20:23:13 UTC (rev 10216)
+++ trunk/gnue-common/src/datasources/drivers/Base/ResultSet.py 2010-10-20 
20:35:55 UTC (rev 10217)
@@ -589,14 +589,19 @@
 
         assert log.debug('Inserting a blank record in %s' % self)
 
+        if self.__current_index == -1:
+            new_index = self.__record_count
+        else:
+            new_index = self.__current_index + 1
+
         # Don't update the record count and the record pointer yet, so an
         # ON-NEWRECORD trigger can see the old state of the result set.
         record = self.__create_record(
                 defaultData = defaultData,
-                position    = self.__current_index + 1)
+                position    = new_index)
         # Now the trigger has run, we can update our counters.
         self.__record_count += 1
-        self.__current_index += 1
+        self.__current_index = new_index
         self.__sync(True)
         return record
 


_______________________________________________
commit-gnue mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-gnue

Reply via email to