tag 299245 +patch
thanks

Here is a patch; tested and it seems to work fine here.

-- 
Wesley J. Landaker <[EMAIL PROTECTED]>
OpenPGP FP: 4135 2A3B 4726 ACC5 9094  0097 F0A9 8A4C 4CD6 E3D2

diff -ur cheesetracker-0.9.9.orig/common/interface__QT/helpers/property_bridge_edit.cpp cheesetracker-0.9.9/common/interface__QT/helpers/property_bridge_edit.cpp
--- cheesetracker-0.9.9.orig/common/interface__QT/helpers/property_bridge_edit.cpp	2004-04-22 21:21:18.000000000 -0600
+++ cheesetracker-0.9.9/common/interface__QT/helpers/property_bridge_edit.cpp	2005-03-12 16:17:27.752539690 -0700
@@ -516,22 +516,18 @@
 
 void Q_Property_Bridge_String_Multiline::value_changed() {
 
-	if (!bridge) return;
+	if (!bridge || validating) return;
 
+	validating = true;
 	bridge->set(text_edit->text().ascii());
+	validating = false;
 }
 
 void Q_Property_Bridge_String_Multiline::bridge_changed() {
-
-	static bool updating_bridge=false;
-	
-	if (updating_bridge) //prevent recursive loop
-		return;
-	
-	updating_bridge=true;
-	// infinite loop?
-	text_edit->setText(bridge->get().c_str());
-	updating_bridge=false;
+        if (validating) return;
+        validating = true;
+        text_edit->setText(bridge->get().c_str());
+        validating = false;
 };
 
 void Q_Property_Bridge_String_Multiline::set_bridge(String_Property_Bridge *p_bridge) {
@@ -547,6 +543,7 @@
 
 
 	bridge=NULL;
+        validating = false;
 	label = new QLabel("Bridge:",this);
 	text_edit= new QTextEdit(this);
 	text_edit->setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding));
diff -ur cheesetracker-0.9.9.orig/common/interface__QT/helpers/property_bridge_edit.h cheesetracker-0.9.9/common/interface__QT/helpers/property_bridge_edit.h
--- cheesetracker-0.9.9.orig/common/interface__QT/helpers/property_bridge_edit.h	2004-04-22 21:21:18.000000000 -0600
+++ cheesetracker-0.9.9/common/interface__QT/helpers/property_bridge_edit.h	2005-03-12 16:15:47.749422390 -0700
@@ -239,6 +239,7 @@
 
 	Q_Property_Bridge_String_Multiline();
 	String_Property_Bridge *bridge;
+        bool validating;
 
 	SigC::Connection connection;
 	void bridge_changed();

Attachment: pgpdNST8eigKG.pgp
Description: PGP signature

Reply via email to