1.1 --- a/librazor/rpm.c Thu Feb 16 17:33:47 2012 +0000
1.2 +++ b/librazor/rpm.c Sat Aug 23 16:07:09 2014 +0100
1.3 @@ -602,28 +602,24 @@
1.4 }
1.5
1.6 RAZOR_EXPORT struct razor_rpm *
1.7 -razor_rpm_open(const char *filename, struct razor_atomic *atomic)
1.8 +razor_rpm_open(const char *filename, struct razor_error **error)
1.9 {
1.10 struct razor_rpm *rpm;
1.11 struct rpm_header_index *base, *index;
1.12 - struct razor_error *error = NULL;
1.13 unsigned int count, i, nindex, hsize;
1.14 const char *name, *prefix;
1.15 - char *s;
1.16
1.17 assert (filename != NULL);
1.18
1.19 rpm = zalloc(sizeof *rpm);
1.20 if (rpm == NULL) {
1.21 - razor_atomic_abort(atomic, "Not enough memory");
1.22 + razor_set_error(error, NULL, "Not enough memory");
1.23 return NULL;
1.24 }
1.25 memset(rpm, 0, sizeof *rpm);
1.26
1.27 - rpm->map = razor_file_get_contents(filename, &rpm->size, 0, &error);
1.28 + rpm->map = razor_file_get_contents(filename, &rpm->size, 0, error);
1.29 if (!rpm->map) {
1.30 - razor_atomic_abort(atomic, razor_error_get_msg(error));
1.31 - razor_error_free(error);
1.32 free(rpm);
1.33 return NULL;
1.34 }
1.35 @@ -654,10 +650,8 @@
1.36 &count);
1.37 if (name) {
1.38 razor_rpm_close(rpm);
1.39 - s = razor_concat(filename,
1.40 - ": Old filenames not supported", NULL);
1.41 - razor_atomic_abort(atomic, s);
1.42 - free(s);
1.43 + razor_set_error(error, filename,
1.44 + "Old filenames not supported");
1.45 return NULL;
1.46 }
1.47 }
1.48 @@ -676,11 +670,8 @@
1.49 &count);
1.50 if (prefix) {
1.51 razor_rpm_close(rpm);
1.52 - s = razor_concat(filename,
1.53 - ": Default prefix not supported",
1.54 - NULL);
1.55 - razor_atomic_abort(atomic, s);
1.56 - free(s);
1.57 + razor_set_error(error, filename,
1.58 + "Default prefix not supported");
1.59 return NULL;
1.60 }
1.61 }