summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog14
-rw-r--r--src/dired.c5
-rw-r--r--src/doc.c9
-rw-r--r--src/floatfns.c4
-rw-r--r--src/font.c13
-rw-r--r--src/fringe.c4
-rw-r--r--src/lread.c3
-rw-r--r--src/minibuf.c7
-rw-r--r--src/term.c4
-rw-r--r--src/xterm.c6
10 files changed, 32 insertions, 37 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e5d663b746e..183d9728345 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,17 @@
+2013-01-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify via eabs.
+ * dired.c (file_name_completion):
+ * doc.c (get_doc_string):
+ * floatfns.c (round2):
+ * font.c (font_score, font_delete_unmatched):
+ * fringe.c (compute_fringe_widths):
+ * lread.c (read_list):
+ * minibuf.c (Ftry_completion):
+ * term.c (tty_ins_del_lines):
+ * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
+ Use eabs (x) rather than open-coding it as (x < 0 ? -x : x).
+
2012-12-31 Eli Zaretskii <eliz@gnu.org>
* w32.c (unsetenv): Set up the string passed to _putenv
diff --git a/src/dired.c b/src/dired.c
index 1fda9e8b371..d9868d76b52 100644
--- a/src/dired.c
+++ b/src/dired.c
@@ -671,10 +671,7 @@ file_name_completion (Lisp_Object file, Lisp_Object dirname, bool all_flag,
name, zero,
make_number (compare),
completion_ignore_case ? Qt : Qnil);
- ptrdiff_t matchsize
- = (EQ (cmp, Qt) ? compare
- : XINT (cmp) < 0 ? - XINT (cmp) - 1
- : XINT (cmp) - 1);
+ ptrdiff_t matchsize = EQ (cmp, Qt) ? compare : eabs (XINT (cmp)) - 1;
if (completion_ignore_case)
{
diff --git a/src/doc.c b/src/doc.c
index 76008295add..8b71b629524 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -83,24 +83,23 @@ get_doc_string (Lisp_Object filepos, bool unibyte, bool definition)
ptrdiff_t minsize;
int offset;
EMACS_INT position;
- Lisp_Object file, tem;
+ Lisp_Object file, tem, pos;
USE_SAFE_ALLOCA;
if (INTEGERP (filepos))
{
file = Vdoc_file_name;
- position = XINT (filepos);
+ pos = filepos;
}
else if (CONSP (filepos))
{
file = XCAR (filepos);
- position = XINT (XCDR (filepos));
+ pos = XCDR (filepos);
}
else
return Qnil;
- if (position < 0)
- position = - position;
+ position = eabs (XINT (pos));
if (!STRINGP (Vdoc_directory))
return Qnil;
diff --git a/src/floatfns.c b/src/floatfns.c
index 645a5957609..16d6d2382b8 100644
--- a/src/floatfns.c
+++ b/src/floatfns.c
@@ -399,8 +399,8 @@ round2 (EMACS_INT i1, EMACS_INT i2)
odd. */
EMACS_INT q = i1 / i2;
EMACS_INT r = i1 % i2;
- EMACS_INT abs_r = r < 0 ? -r : r;
- EMACS_INT abs_r1 = (i2 < 0 ? -i2 : i2) - abs_r;
+ EMACS_INT abs_r = eabs (r);
+ EMACS_INT abs_r1 = eabs (i2) - abs_r;
return q + (abs_r + (q & 1) <= abs_r1 ? 0 : (i2 ^ r) < 0 ? -1 : 1);
}
diff --git a/src/font.c b/src/font.c
index f6b6fa026c0..19d65414634 100644
--- a/src/font.c
+++ b/src/font.c
@@ -2101,9 +2101,7 @@ font_score (Lisp_Object entity, Lisp_Object *spec_prop)
{
EMACS_INT diff = ((XINT (AREF (entity, i)) >> 8)
- (XINT (spec_prop[i]) >> 8));
- if (diff < 0)
- diff = - diff;
- score |= min (diff, 127) << sort_shift_bits[i];
+ score |= min (eabs (diff), 127) << sort_shift_bits[i];
}
/* Score the size. Maximum difference is 127. */
@@ -2118,10 +2116,7 @@ font_score (Lisp_Object entity, Lisp_Object *spec_prop)
if (CONSP (Vface_font_rescale_alist))
pixel_size *= font_rescale_ratio (entity);
- diff = pixel_size - XINT (AREF (entity, FONT_SIZE_INDEX));
- if (diff < 0)
- diff = - diff;
- diff <<= 1;
+ diff = eabs (pixel_size - XINT (AREF (entity, FONT_SIZE_INDEX))) << 1;
if (! NILP (spec_prop[FONT_DPI_INDEX])
&& ! EQ (spec_prop[FONT_DPI_INDEX], AREF (entity, FONT_DPI_INDEX)))
diff |= 1;
@@ -2671,9 +2666,7 @@ font_delete_unmatched (Lisp_Object vec, Lisp_Object spec, int size)
{
int diff = XINT (AREF (entity, FONT_SIZE_INDEX)) - size;
- if (diff != 0
- && (diff < 0 ? -diff > FONT_PIXEL_SIZE_QUANTUM
- : diff > FONT_PIXEL_SIZE_QUANTUM))
+ if (eabs (diff) > FONT_PIXEL_SIZE_QUANTUM)
prop = FONT_SPEC_MAX;
}
if (prop < FONT_SPEC_MAX
diff --git a/src/fringe.c b/src/fringe.c
index ce31fd01763..ace97272241 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -1360,8 +1360,8 @@ compute_fringe_widths (struct frame *f, int redraw)
if (left_fringe_width || right_fringe_width)
{
- int left_wid = left_fringe_width >= 0 ? left_fringe_width : -left_fringe_width;
- int right_wid = right_fringe_width >= 0 ? right_fringe_width : -right_fringe_width;
+ int left_wid = eabs (left_fringe_width);
+ int right_wid = eabs (right_fringe_width);
int conf_wid = left_wid + right_wid;
int font_wid = FRAME_COLUMN_WIDTH (f);
int cols = (left_wid + right_wid + font_wid-1) / font_wid;
diff --git a/src/lread.c b/src/lread.c
index 2f385797ca0..0db83f37acc 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -3569,9 +3569,8 @@ read_list (bool flag, Lisp_Object readcharfun)
doc string, caller must make it
multibyte. */
- EMACS_INT pos = XINT (XCDR (val));
/* Position is negative for user variables. */
- if (pos < 0) pos = -pos;
+ EMACS_INT pos = eabs (XINT (XCDR (val)));
if (pos >= saved_doc_string_position
&& pos < (saved_doc_string_position
+ saved_doc_string_length))
diff --git a/src/minibuf.c b/src/minibuf.c
index dcc4af37c13..73c32c0ec35 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -1398,12 +1398,7 @@ is used to further constrain the set of candidates. */)
eltstring, zero,
make_number (compare),
completion_ignore_case ? Qt : Qnil);
- if (EQ (tem, Qt))
- matchsize = compare;
- else if (XINT (tem) < 0)
- matchsize = - XINT (tem) - 1;
- else
- matchsize = XINT (tem) - 1;
+ matchsize = EQ (tem, Qt) ? compare : eabs (XINT (tem)) - 1;
if (completion_ignore_case)
{
diff --git a/src/term.c b/src/term.c
index 241875de52f..b93e21b98c8 100644
--- a/src/term.c
+++ b/src/term.c
@@ -953,8 +953,8 @@ tty_ins_del_lines (struct frame *f, int vpos, int n)
const char *single = n > 0 ? tty->TS_ins_line : tty->TS_del_line;
const char *scroll = n > 0 ? tty->TS_rev_scroll : tty->TS_fwd_scroll;
- register int i = n > 0 ? n : -n;
- register char *buf;
+ int i = eabs (n);
+ char *buf;
/* If the lines below the insertion are being pushed
into the end of the window, this is the same as clearing;
diff --git a/src/xterm.c b/src/xterm.c
index 374b6287458..864d51dac73 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -2236,8 +2236,7 @@ x_draw_image_foreground (struct glyph_string *s)
nothing here for mouse-face. */
if (s->hl == DRAW_CURSOR)
{
- int relief = s->img->relief;
- if (relief < 0) relief = -relief;
+ int relief = eabs (s->img->relief);
XDrawRectangle (s->display, s->window, s->gc,
x - relief, y - relief,
s->slice.width + relief*2 - 1,
@@ -2368,8 +2367,7 @@ x_draw_image_foreground_1 (struct glyph_string *s, Pixmap pixmap)
nothing here for mouse-face. */
if (s->hl == DRAW_CURSOR)
{
- int r = s->img->relief;
- if (r < 0) r = -r;
+ int r = eabs (s->img->relief);
XDrawRectangle (s->display, s->window, s->gc, x - r, y - r,
s->slice.width + r*2 - 1,
s->slice.height + r*2 - 1);