diff src/regex.c @ 367:a4f53d9b3154 r21-1-13

Import from CVS: tag r21-1-13
author cvs
date Mon, 13 Aug 2007 11:01:07 +0200
parents afd57c14dfc8
children cc15677e0335
line wrap: on
line diff
--- a/src/regex.c	Mon Aug 13 11:00:13 2007 +0200
+++ b/src/regex.c	Mon Aug 13 11:01:07 2007 +0200
@@ -5499,22 +5499,25 @@
 #ifdef emacs
   	case before_dot:
           DEBUG_PRINT1 ("EXECUTING before_dot.\n");
- 	  if (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d) >=
-	      BUF_PT (regex_emacs_buffer))
+ 	  if (!regex_emacs_buffer_p
+	      || (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d)
+		  >= BUF_PT (regex_emacs_buffer)))
   	    goto fail;
   	  break;
 
   	case at_dot:
           DEBUG_PRINT1 ("EXECUTING at_dot.\n");
- 	  if (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d)
-	      != BUF_PT (regex_emacs_buffer))
+ 	  if (!regex_emacs_buffer_p
+	      || (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d)
+		  != BUF_PT (regex_emacs_buffer)))
   	    goto fail;
   	  break;
 
   	case after_dot:
           DEBUG_PRINT1 ("EXECUTING after_dot.\n");
-          if (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d)
-	      <= BUF_PT (regex_emacs_buffer))
+          if (!regex_emacs_buffer_p
+	      || (BUF_PTR_BYTE_POS (regex_emacs_buffer, (unsigned char *) d)
+		  <= BUF_PT (regex_emacs_buffer)))
   	    goto fail;
   	  break;
 #if 0 /* not emacs19 */