aboutsummaryrefslogtreecommitdiffhomepage
path: root/ide/coqOps.ml
diff options
context:
space:
mode:
authorGravatar Emilio Jesus Gallego Arias <e+git@x80.org>2017-03-28 00:06:21 +0200
committerGravatar Emilio Jesus Gallego Arias <e+git@x80.org>2017-03-28 00:06:21 +0200
commitdf1d4dc9c3808a811111e4cd9eeda328b51f20de (patch)
tree5afff9b53e69fdfb72de3ae4cc577b330f748bd2 /ide/coqOps.ml
parent7535e268f7706d1dee263fdbafadf920349103db (diff)
[coqide] Protect against size_allocate race in proofview.
To handle dynamic printing in CoqIDE we listen to the `size_allocate` signal , [see more details in 6885a398229918865378ea24f07d93d2bcdd2802] However, we must be careful to protect against scrollbar creation: it is possible for the `size_allocate` handler to change the size when inserting text (due to scrollbars), thus we may enter in an infinite loop. Our fix is to check if the width has really changed, as done in `Wg_MessageView`. This fixes the problem noted by @herbelin in https://coq.inria.fr/bugs/show_bug.cgi?id=5417
Diffstat (limited to 'ide/coqOps.ml')
-rw-r--r--ide/coqOps.ml2
1 files changed, 1 insertions, 1 deletions
diff --git a/ide/coqOps.ml b/ide/coqOps.ml
index 4a1d688f5..45b5a1007 100644
--- a/ide/coqOps.ml
+++ b/ide/coqOps.ml
@@ -358,7 +358,7 @@ object(self)
| Good evs ->
proof#set_goals goals;
proof#set_evars evs;
- proof#refresh ();
+ proof#refresh ~force:true;
Coq.return ()
)
)