Date: Friday, January 19, 2007 @ 18:44:50 Author: aaron Path: /home/cvs-pacman/pacman-lib/lib/libalpm Modified: package.c (1.47 -> 1.48) Moved some decls to make the "pkg_invalid" patch compile again. -----------+ package.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) Index: pacman-lib/lib/libalpm/package.c diff -u pacman-lib/lib/libalpm/package.c:1.47 pacman-lib/lib/libalpm/package.c:1.48 --- pacman-lib/lib/libalpm/package.c:1.47 Fri Jan 19 13:06:37 2007 +++ pacman-lib/lib/libalpm/package.c Fri Jan 19 18:44:50 2007 @@ -235,6 +235,8 @@ register struct archive *archive; struct archive_entry *entry; pmpkg_t *info = NULL; + char *descfile = NULL; + int fd = -1; if(pkgfile == NULL || strlen(pkgfile) == 0) { RET_ERR(PM_ERR_WRONG_ARGS, NULL); @@ -261,9 +263,6 @@ break; } if(!strcmp(archive_entry_pathname (entry), ".PKGINFO")) { - char *descfile; - int fd; - /* extract this file into /tmp. it has info for us */ descfile = strdup("/tmp/alpm_XXXXXX"); fd = mkstemp(descfile); @@ -351,9 +350,13 @@ pkg_invalid: pm_errno = PM_ERR_PKG_INVALID; - unlink(descfile); - FREE(descfile); - close(fd); + if(descfile) { + unlink(descfile); + FREE(descfile); + } + if(fd != -1) { + close(fd); + } error: FREEPKG(info); archive_read_finish (archive);