diff src/syntax.c @ 29293:d01408f0820d

(find_defun_start): Move test for open_paren_in_column_0_is_defun_start outside of the loop.
author Gerd Moellmann <gerd@gnu.org>
date Mon, 29 May 2000 16:16:45 +0000
parents 4341105dc3f0
children 5d055597ce9a
line wrap: on
line diff
--- a/src/syntax.c	Mon May 29 15:51:56 2000 +0000
+++ b/src/syntax.c	Mon May 29 16:16:45 2000 +0000
@@ -374,22 +374,24 @@
      syntax-tables.  */
   gl_state.current_syntax_table = current_buffer->syntax_table;
   gl_state.use_global = 0;
-  while (PT > BEGV)
+  if (open_paren_in_column_0_is_defun_start)
     {
-      /* Open-paren at start of line means we may have found our
-	 defun-start.  */
-      if (SYNTAX (FETCH_CHAR (PT_BYTE)) == Sopen)
+      while (PT > BEGV)
 	{
-	  SETUP_SYNTAX_TABLE (PT + 1, -1);	/* Try again... */
-	  if (SYNTAX (FETCH_CHAR (PT_BYTE)) == Sopen
-	      && open_paren_in_column_0_is_defun_start)
-	    break;
-	  /* Now fallback to the default value.  */
-	  gl_state.current_syntax_table = current_buffer->syntax_table;
-	  gl_state.use_global = 0;
+	  /* Open-paren at start of line means we may have found our
+	     defun-start.  */
+	  if (SYNTAX (FETCH_CHAR (PT_BYTE)) == Sopen)
+	    {
+	      SETUP_SYNTAX_TABLE (PT + 1, -1);	/* Try again... */
+	      if (SYNTAX (FETCH_CHAR (PT_BYTE)) == Sopen)
+		break;
+	      /* Now fallback to the default value.  */
+	      gl_state.current_syntax_table = current_buffer->syntax_table;
+	      gl_state.use_global = 0;
+	    }
+	  /* Move to beg of previous line.  */
+	  scan_newline (PT, PT_BYTE, BEGV, BEGV_BYTE, -2, 1);
 	}
-      /* Move to beg of previous line.  */
-      scan_newline (PT, PT_BYTE, BEGV, BEGV_BYTE, -2, 1);
     }
 
   /* Record what we found, for the next try.  */