[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31582] trunk/blender/source/blender/ blenkernel/intern/blender.c: Fix #23461 and #23474: revision 31517 to simplify code made undo work

Brecht Van Lommel brecht at blender.org
Wed Aug 25 18:01:30 CEST 2010


Revision: 31582
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31582
Author:   blendix
Date:     2010-08-25 18:01:30 +0200 (Wed, 25 Aug 2010)

Log Message:
-----------
Fix #23461 and #23474: revision 31517 to simplify code made undo work
incorrect, BLI_findstring doesn't work when you need to loop over the
list backwards.

Revision Links:
--------------
    http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31517

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/blender.c

Modified: trunk/blender/source/blender/blenkernel/intern/blender.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/blender.c	2010-08-25 14:33:50 UTC (rev 31581)
+++ trunk/blender/source/blender/blenkernel/intern/blender.c	2010-08-25 16:01:30 UTC (rev 31582)
@@ -645,8 +645,12 @@
 /* go back to the last occurance of name in stack */
 void BKE_undo_name(bContext *C, const char *name)
 {
-	UndoElem *uel= BLI_findstring(&undobase, name, offsetof(UndoElem, name));
+	UndoElem *uel;
 
+	for(uel= undobase.last; uel; uel= uel->prev)
+		if(strcmp(name, uel->name)==0)
+			break;
+
 	if(uel && uel->prev) {
 		curundo= uel->prev;
 		BKE_undo_step(C, 0);





More information about the Bf-blender-cvs mailing list