razor-internal.h
author Dan Winship <danw@gnome.org>
Wed Feb 20 12:42:42 2008 -0500 (2008-02-20)
changeset 126 3142795705a5
child 186 7f45d0401e37
permissions -rw-r--r--
Fix file importing code to not generate some duplicate directories

build_file_tree() depends on the fact that the contents of a directory
are sorted immediately after it in the file list, but '.' sorts before '/'
lexicographically, so you'd actually end up with, eg:

/etc/yum
/etc/yum.conf
/etc/yum/pluginconf.d

which would cause a second entry for /etc/yum to be added to the file
list.

For now I've fixed this by make compare_filenames() do a special strcmp
by hand, manually sorting '/' before anything else.
     1 #ifndef _RAZOR_INTERNAL_H_
     2 #define _RAZOR_INTERNAL_H_
     3 
     4 #define ALIGN(value, base) (((value) + (base - 1)) & ~((base) - 1))
     5 
     6 /* Utility functions */
     7 
     8 int razor_create_dir(const char *root, const char *path);
     9 int razor_write(int fd, const void *data, size_t size);
    10 
    11 #endif /* _RAZOR_INTERNAL_H_ */