Prevent hideshow from parsing braces inside comments (Bug#8036).
authorDmitry Bolshakov <dmitry.bolshakov@bridge-quest.com>
Sat, 19 Feb 2011 22:20:35 +0000 (17:20 -0500)
committerChong Yidong <cyd@stupidchicken.com>
Sat, 19 Feb 2011 22:20:35 +0000 (17:20 -0500)
* progmodes/hideshow.el (hs-find-block-beginning)
(hs-hide-level-recursive): Ignore comments when parsing braces.

lisp/ChangeLog
lisp/progmodes/hideshow.el

index e0255ce..2f932c3 100644 (file)
@@ -1,3 +1,15 @@
+2011-02-19  Dmitry Bolshakov <dmitry.bolshakov@bridge-quest.com>
+            Dima Kogan <dkogan@cds.caltech.edu>  (tiny change)
+
+       * progmodes/hideshow.el (hs-find-block-beginning)
+       (hs-hide-level-recursive): Ignore comments when parsing braces
+       (Bug#8036).
+
+2011-02-19  Chong Yidong  <cyd@stupidchicken.com>
+
+       * vc/vc-bzr.el (vc-bzr-bound-branch-p): New function.
+       (vc-bzr-pull): Use it.
+
 2011-02-19  Chong Yidong  <cyd@stupidchicken.com>
 
        * vc/vc-bzr.el (vc-bzr--branch-conf): Function deleted.
index 15a94d6..9468d7b 100644 (file)
@@ -689,6 +689,8 @@ Return point, or nil if original point was not in a block."
         (point)
       ;; look backward for the start of a block that contains the cursor
       (while (and (re-search-backward hs-block-start-regexp nil t)
+                 (save-match-data
+                   (not (nth 4 (syntax-ppss)))) ; not inside comments
                   (not (setq done
                              (< here (save-excursion
                                        (hs-forward-sexp (match-data t) 1)
@@ -711,10 +713,12 @@ Return point, or nil if original point was not in a block."
            (forward-comment (buffer-size))
            (and (< (point) maxp)
                 (re-search-forward hs-block-start-regexp maxp t)))
-    (if (> arg 1)
-        (hs-hide-level-recursive (1- arg) minp maxp)
-      (goto-char (match-beginning hs-block-start-mdata-select))
-      (hs-hide-block-at-point t)))
+    (when (save-match-data
+           (not (nth 4 (syntax-ppss)))) ; not inside comments
+      (if (> arg 1)
+         (hs-hide-level-recursive (1- arg) minp maxp)
+       (goto-char (match-beginning hs-block-start-mdata-select))
+       (hs-hide-block-at-point t))))
   (goto-char maxp))
 
 (defmacro hs-life-goes-on (&rest body)