Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
base85: Make the code more obvious instead of explaining the non-obvious
author
Andreas Gruenbacher
<agruen@suse.de>
Fri, 8 Jan 2010 13:40:00 +0000
(14:40 +0100)
committer
Junio C Hamano
<gitster@pobox.com>
Sun, 10 Jan 2010 06:43:47 +0000
(22:43 -0800)
Here is another cleanup ...
Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
base85.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
b0bec51
)
diff --git
a/base85.c
b/base85.c
index f2b9a24d5ec9f470f77a3d2396d60c285108c8e9..24ddf60eb0a20f35efcdc2d37f99e46d94e8f5c9 100644
(file)
--- a/
base85.c
+++ b/
base85.c
@@
-57,14
+57,8
@@
int decode_85(char *dst, const char *buffer, int len)
de = de85[ch];
if (--de < 0)
return error("invalid base85 alphabet %c", ch);
de = de85[ch];
if (--de < 0)
return error("invalid base85 alphabet %c", ch);
- /*
- * Detect overflow. The largest
- * 5-letter possible is "|NsC0" to
- * encode 0xffffffff, and "|NsC" gives
- * 0x03030303 at this point (i.e.
- * 0xffffffff = 0x03030303 * 85).
- */
- if (0x03030303 < acc ||
+ /* Detect overflow. */
+ if (0xffffffff / 85 < acc ||
0xffffffff - de < (acc *= 85))
return error("invalid base85 sequence %.5s", buffer-5);
acc += de;
0xffffffff - de < (acc *= 85))
return error("invalid base85 sequence %.5s", buffer-5);
acc += de;