pull: fix GLNX_HASH_TABLE_FOREACH_KV regressions

These are regression from #971. We were stuffing a pointer size inside a
variable of integer size. So the assignment was spilling over into other
variables' storage space. Actually use a gpointer and GPOINTER_TO_[U]INT
as was done originally.

Also bump libglnx which has static checks for this error in the future.

Update submodule: libglnx

Closes: #990
Approved by: cgwalters
This commit is contained in:
Jonathan Lebon authored and Atomic Bot committed 2017-06-30 16:26:53 +00:00
1 parent acace571ef
commit d5dd576d20
3 files changed
+6 -4

No files matched your search

+1 -1
Submodule libglnx updated: 01e934c18e...a37e672739.
+2 -2
View File
@@ -1091,9 +1091,9 @@ ostree_repo_checkout_gc (OstreeRepo *self,
if (!to_clean_dirs)
return TRUE; /* Note early return */
GLNX_HASH_TABLE_FOREACH (to_clean_dirs, guint, prefix)
GLNX_HASH_TABLE_FOREACH (to_clean_dirs, gpointer, prefix)
{
g_autofree char *objdir_name = g_strdup_printf ("%02x", prefix);
g_autofree char *objdir_name = g_strdup_printf ("%02x", GPOINTER_TO_UINT (prefix));
g_auto(GLnxDirFdIterator) dfd_iter = { 0, };
if (!glnx_dirfd_iterator_init_at (self->uncompressed_objects_dir_fd, objdir_name, FALSE,
+3 -1
View File
@@ -4948,8 +4948,10 @@ ostree_repo_pull_from_remotes_async (OstreeRepo *self,
/* Any refs left un-downloaded? If so, we’ve failed. */
GLNX_HASH_TABLE_FOREACH_KV (refs_pulled, const OstreeCollectionRef*, ref,
gboolean, is_pulled)
gpointer, is_pulled_pointer)
{
gboolean is_pulled = GPOINTER_TO_INT (is_pulled_pointer);
if (is_pulled)
continue;