Commit Graph

32 Commits

Author SHA1 Message Date
Ryan Lortie
82cbc59297 remove a stray variable
This was used to implement a much more complicated check which was
dismissed in favour of the simple 'must follow in file' approach.
2012-07-08 10:44:05 -04:00
Ryan Lortie
374cb1bc87 gvdb-reader: robustness improvements
Improve the robustness of gvdb-reader in two ways.

First: ensure that the result of gvdb_table_has_value() always agrees
with gvdb_table_get_value().  Those two could disagree in the case that
the value was recorded as existing but pointed to an out-of-bounds
region.

Second: prevent gvdb_table_walk() from getting stuck in finite loops due
to self-referential directories.
2012-07-06 21:42:04 -04:00
Ryan Lortie
a9551ccf92 more whitespace fixes 2012-07-05 23:14:55 -04:00
Ryan Lortie
ae3d42c60f gvdb-reader: refuse to open file with small header
Clean up the logic for dealing with invalid headers and include the case
where the file is too small to contain a fully-formed header.
2012-07-05 19:24:46 -04:00
Ryan Lortie
4e77b52ad8 gvdb-reader: correct whitespace damage 2012-07-05 19:13:58 -04:00
Colin Walters
7683c2b796 builder: Note don't actually implement bloom filters 2012-03-08 11:30:03 -05:00
Alexander Larsson
73acf01618 Support creating a GvdbReader from data
This is needed for the glib resource work.
2012-01-13 15:59:56 +01:00
Murray Cumming
d1f6300363 Docs: Changed can not to cannot.
This is a backport from the glib commit 30fdc1a799
2012-01-13 09:23:06 +01:00
Ryan Lortie
92652ac791 hashing: always use signed chars
Our hashing of non-ASCII strings was undefined due to the fact that
'char' is signed on some platforms, unsigned on others.  Always use a
signed char.

Discovered by Alexander Larsson.

https://bugzilla.gnome.org/show_bug.cgi?id=658806
2011-09-12 08:12:44 -04:00
Ryan Lortie
a5dd6fcc4f builder: do not include <unistd.h> on win32
Spotted by Kean Johnston <kean.johnston@gmail.com>.

https://mail.gnome.org/archives/gtk-devel-list/2011-April/msg00010.html
2011-04-15 09:27:38 -04:00
Ryan Lortie
3812559659 Remove unused variable in gvdb-reader
As originally committed against dconf by Owen.

Newer GCC flags this.
2011-02-03 17:26:51 -05:00
Ryan Lortie
03b6b9fb97 Mark a symbol as G_GNUC_INTERNAL 2011-01-25 18:26:21 -05:00
Ryan Lortie
a2918d6c3e Fix some harmless sign compare warnings 2011-01-17 15:19:14 -05:00
Ryan Lortie
ba5619ba7f C++ify the reader header 2011-01-17 15:15:46 -05:00
Ryan Lortie
92c22e7ca7 Fix some leaks in the GVDB builder 2010-12-15 11:36:14 -05:00
Ryan Lortie
814c0fcaaf Pass name_length to walk close function
For efficiency and safety.  This way we don't need to scan backwards for
the path separator (trusting that we will find it properly).
2010-12-07 01:36:09 -05:00
Ryan Lortie
e5e491c969 Add gvdb_table_get_raw_value() API for GSettings 2010-10-03 23:02:45 -04:00
Ryan Lortie
a35852bda3 Fix reader on big endian
Some of the hashtable code was failing to byteswap properly.
2010-10-03 21:10:35 -04:00
Ryan Lortie
d63f199d92 Fix is_valid() API
Actually dereference the pointer instead of just checking for NULL
2010-07-18 21:43:18 -04:00
Ryan Lortie
df40747190 Add gvdb_table_is_valid() API
Checks that the on-disk file is still valid.
2010-07-18 20:45:37 -04:00
Ryan Lortie
afea703422 Implement byteswapping in the reader 2010-06-10 15:27:46 -04:00
Ryan Lortie
9a8cba9eb5 drop "options" support 2010-06-10 13:34:56 -04:00
Ryan Lortie
5215d4b6d3 Add API for dconf's sake. 2010-04-28 12:39:02 -05:00
Ryan Lortie
daa1a73c75 Add a missing 'static' on internal functions 2010-04-22 15:45:47 -04:00
Ryan Lortie
291a5c9ed9 __value -> value to avoid stomping the C compiler 2010-04-20 20:12:41 -04:00
Ryan Lortie
2d9811ebda Don't write out zero-byte sections in builder
This and the previous issue caught by Christian Persch in bug #616156
2010-04-19 10:28:44 -04:00
Ryan Lortie
6713b3dbaa Whitespace fixups 2010-04-19 10:18:44 -04:00
Ryan Lortie
dc2b43b3e7 Fix logic error for missing options in reader 2010-04-19 10:17:31 -04:00
Ryan Lortie
caad55d726 Fix uninitialised header in the builder. 2010-04-16 11:04:15 -04:00
Ryan Lortie
3c10369bf6 Recommend git-merge(1) over git-submodule(1). 2010-04-15 22:12:45 -04:00
Ryan Lortie
3938c73547 Add a brief description to the .doap 2010-04-15 21:32:54 -04:00
Ryan Lortie
0fec2048f0 Initial commit 2010-04-15 21:26:34 -04:00