summaryrefslogtreecommitdiff
path: root/src/runtime/c/gu/in.c
diff options
context:
space:
mode:
authorKrasimir Angelov <kr.angelov@gmail.com>2017-09-13 10:23:28 +0200
committerKrasimir Angelov <kr.angelov@gmail.com>2017-09-13 10:23:28 +0200
commitdf992c31fdf191c88a5f8cd5ac462e5537523316 (patch)
tree1a2550952101cd577c5332f201b6405c14932d74 /src/runtime/c/gu/in.c
parent3e55aa442452d6a38a67466cb2ef30e1ce736bb5 (diff)
added gu_out_u16be, gu_out_u64be and gu_out_f64be in libgu. The later is using gu_encode_double which is probably still wrong. Corrected gu_in_le and gu_in_f64be.
Diffstat (limited to 'src/runtime/c/gu/in.c')
-rw-r--r--src/runtime/c/gu/in.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/runtime/c/gu/in.c b/src/runtime/c/gu/in.c
index b36df7924..c241d3086 100644
--- a/src/runtime/c/gu/in.c
+++ b/src/runtime/c/gu/in.c
@@ -152,7 +152,7 @@ gu_in_le(GuIn* in, GuExn* err, int n)
uint8_t buf[8];
gu_in_bytes(in, buf, n, err);
uint64_t u = 0;
- for (int i = 0; i < n; i++) {
+ for (int i = n-1; i >= 0; i--) {
u = u << 8 | buf[i];
}
return u;
@@ -246,7 +246,7 @@ gu_in_f64le(GuIn* in, GuExn* err)
GU_API double
gu_in_f64be(GuIn* in, GuExn* err)
{
- return gu_decode_double(gu_in_u64le(in, err));
+ return gu_decode_double(gu_in_u64be(in, err));
}
static void