projects
/
umurmur.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
building with gnutls is now possible
[umurmur.git]
/
src
/
pds.c
diff --git
a/src/pds.c
b/src/pds.c
index 60c17e4c6b68abc6b2df677a702bf8e2f033d2d7..066666f13b6c402ac4c684e3e321907246d9b3a6 100644
(file)
--- a/
src/pds.c
+++ b/
src/pds.c
@@
-102,7
+102,7
@@
int Pds_skip(pds_t *pds, int offset)
pds->bOk = false;
return 0;
}
pds->bOk = false;
return 0;
}
-
+
}
static inline uint64_t next(pds_t *pds)
}
static inline uint64_t next(pds_t *pds)
@@
-135,9
+135,9
@@
void Pds_free(pds_t *pds)
void Pds_add_double(pds_t *pds, double value)
{
double64u_t u;
void Pds_add_double(pds_t *pds, double value)
{
double64u_t u;
-
+
u.dval = value;
u.dval = value;
-
+
Pds_add_numval(pds, u.u64);
}
Pds_add_numval(pds, u.u64);
}
@@
-150,7
+150,7
@@
double Pds_get_double(pds_t *pds)
void Pds_add_numval(pds_t *pds, const uint64_t value)
{
uint64_t i = value;
void Pds_add_numval(pds_t *pds, const uint64_t value)
{
uint64_t i = value;
-
+
if ((i & 0x8000000000000000LL) && (~i < 0x100000000LL)) {
// Signed number.
i = ~i;
if ((i & 0x8000000000000000LL) && (~i < 0x100000000LL)) {
// Signed number.
i = ~i;
@@
-200,12
+200,12
@@
void Pds_add_numval(pds_t *pds, const uint64_t value)
append_val(pds, i & 0xFF);
}
}
append_val(pds, i & 0xFF);
}
}
-
+
uint64_t Pds_get_numval(pds_t *pds)
{
uint64_t i = 0;
uint64_t v = next(pds);
uint64_t Pds_get_numval(pds_t *pds)
{
uint64_t i = 0;
uint64_t v = next(pds);
-
+
if ((v & 0x80) == 0x00) {
i=(v & 0x7F);
} else if ((v & 0xC0) == 0x80) {
if ((v & 0x80) == 0x00) {
i=(v & 0x7F);
} else if ((v & 0xC0) == 0x80) {