diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2013-02-11 15:37:18 -0800 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2013-02-11 15:37:18 -0800 |
commit | a84b7c5334e232913111b840f2283d0138a6f5fb (patch) | |
tree | 8ee4e55f7059d1eb918fb5966cd81ee3f84153bc /src/editfns.c | |
parent | 71d4202f204ea5fad93eb34406f0ef671630f271 (diff) | |
download | emacs-a84b7c5334e232913111b840f2283d0138a6f5fb.tar.gz emacs-a84b7c5334e232913111b840f2283d0138a6f5fb.tar.bz2 emacs-a84b7c5334e232913111b840f2283d0138a6f5fb.zip |
Tune by using memchr and memrchr.
* .bzrignore: Add string.h.
* admin/merge-gnulib (GNULIB_MODULES): Add memrchr.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/memrchr.c, lib/string.in.h, m4/memrchr.m4, m4/string_h.m4:
New files, from gnulib.
* src/doc.c (Fsnarf_documentation):
* src/fileio.c (Fsubstitute_in_file_name):
* src/search.c (find_newline, scan_newline):
* src/xdisp.c (pos_visible_p, display_count_lines):
Use memchr and memrchr rather than scanning byte-by-byte.
* src/search.c (find_newline): Rename from scan_buffer.
Omit first arg TARGET, as it's always '\n'. All callers changed.
Diffstat (limited to 'src/editfns.c')
-rw-r--r-- | src/editfns.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/editfns.c b/src/editfns.c index 0f88a781b88..c5cd8b0b725 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -735,9 +735,8 @@ Field boundaries are not noticed if `inhibit-field-text-motion' is non-nil. */) /* This is the ONLY_IN_LINE case, check that NEW_POS and FIELD_BOUND are on the same line by seeing whether there's an intervening newline or not. */ - || (scan_buffer ('\n', - XFASTINT (new_pos), XFASTINT (field_bound), - fwd ? -1 : 1, &shortage, 1), + || (find_newline (XFASTINT (new_pos), XFASTINT (field_bound), + fwd ? -1 : 1, &shortage, 1), shortage != 0))) /* Constrain NEW_POS to FIELD_BOUND. */ new_pos = field_bound; |