Use xfopen to abort on error to prevent segfaulting later.
authorGlenn L McGrath <bug1@ihug.co.nz>
Wed, 18 Jul 2001 03:13:49 +0000 (03:13 -0000)
committerGlenn L McGrath <bug1@ihug.co.nz>
Wed, 18 Jul 2001 03:13:49 +0000 (03:13 -0000)
archival/dpkg.c
dpkg.c

index 189b0a89870d4d22f9f111baf26494e1c4faa46b..dcc3fad4e68508a6f4e7316b85c42402da141299 100644 (file)
@@ -643,7 +643,7 @@ void index_status_file(const char *filename)
        status_node_t *status_node = NULL;
        unsigned int status_num;
 
-       status_file = fopen(filename, "r");
+       status_file = xfopen(filename, "r");
        while ((control_buffer = fgets_str(status_file, "\n\n")) != NULL) {
                const unsigned int package_num = fill_package_struct(control_buffer);
                if (package_num != -1) {
@@ -1036,7 +1036,7 @@ char **create_list(const char *filename)
        int length = 0;
        int count = 0;
 
-       list_stream = fopen(filename, "r");
+       list_stream = xfopen(filename, "r");
        if (list_stream == NULL) {
                return(NULL);
        }
@@ -1246,7 +1246,7 @@ void unpack_package(deb_file_t *deb_file)
        /* Create the list file */
        strcat(info_prefix, "list");
 
-       out_stream = wfopen(info_prefix, "w");                  
+       out_stream = xfopen(info_prefix, "w");                  
        deb_extract(deb_file->filename, out_stream, (extract_quiet | extract_data_tar_gz | extract_list), NULL, NULL);
        fclose(out_stream);
 
diff --git a/dpkg.c b/dpkg.c
index 189b0a89870d4d22f9f111baf26494e1c4faa46b..dcc3fad4e68508a6f4e7316b85c42402da141299 100644 (file)
--- a/dpkg.c
+++ b/dpkg.c
@@ -643,7 +643,7 @@ void index_status_file(const char *filename)
        status_node_t *status_node = NULL;
        unsigned int status_num;
 
-       status_file = fopen(filename, "r");
+       status_file = xfopen(filename, "r");
        while ((control_buffer = fgets_str(status_file, "\n\n")) != NULL) {
                const unsigned int package_num = fill_package_struct(control_buffer);
                if (package_num != -1) {
@@ -1036,7 +1036,7 @@ char **create_list(const char *filename)
        int length = 0;
        int count = 0;
 
-       list_stream = fopen(filename, "r");
+       list_stream = xfopen(filename, "r");
        if (list_stream == NULL) {
                return(NULL);
        }
@@ -1246,7 +1246,7 @@ void unpack_package(deb_file_t *deb_file)
        /* Create the list file */
        strcat(info_prefix, "list");
 
-       out_stream = wfopen(info_prefix, "w");                  
+       out_stream = xfopen(info_prefix, "w");                  
        deb_extract(deb_file->filename, out_stream, (extract_quiet | extract_data_tar_gz | extract_list), NULL, NULL);
        fclose(out_stream);