Mercurial > hg > xemacs-beta
diff src/search.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 | 57709be46d1b |
children | cc15677e0335 |
line wrap: on
line diff
--- a/src/search.c Mon Aug 13 11:00:13 2007 +0200 +++ b/src/search.c Mon Aug 13 11:01:07 2007 +0200 @@ -302,6 +302,7 @@ s2 = BI_BUF_ZV (buf) - p2; regex_emacs_buffer = buf; + regex_emacs_buffer_p = 1; i = re_match_2 (bufp, (char *) BI_BUF_BYTE_ADDRESS (buf, p1), s1, (char *) BI_BUF_BYTE_ADDRESS (buf, p2), s2, BI_BUF_PT (buf) - BI_BUF_BEGV (buf), &search_regs, @@ -392,6 +393,7 @@ { Bytecount bis = charcount_to_bytecount (XSTRING_DATA (string), s); regex_emacs_buffer = buf; + regex_emacs_buffer_p = 0; val = re_search (bufp, (char *) XSTRING_DATA (string), XSTRING_LENGTH (string), bis, XSTRING_LENGTH (string) - bis, @@ -485,6 +487,7 @@ /* #### evil current-buffer dependency */ regex_emacs_buffer = current_buffer; + regex_emacs_buffer_p = 0; val = re_search (bufp, (char *) newnonreloc + offset, length, 0, length, 0); @@ -1121,6 +1124,7 @@ Bytecount val; QUIT; regex_emacs_buffer = buf; + regex_emacs_buffer_p = 1; val = re_search_2 (bufp, (char *) BI_BUF_BYTE_ADDRESS (buf, p1), s1, (char *) BI_BUF_BYTE_ADDRESS (buf, p2), s2, @@ -1159,6 +1163,7 @@ Bytecount val; QUIT; regex_emacs_buffer = buf; + regex_emacs_buffer_p = 1; val = re_search_2 (bufp, (char *) BI_BUF_BYTE_ADDRESS (buf, p1), s1, (char *) BI_BUF_BYTE_ADDRESS (buf, p2), s2, @@ -2036,6 +2041,10 @@ newtext = accum; } + /* newtext can be nil. */ + if (NILP (newtext)) + newtext = build_string (""); + if (case_action == all_caps) newtext = Fupcase (newtext, buffer); else if (case_action == cap_initial)