Package *pkg = package_new();
val = PyDict_GetItemString($input, "checksum");
- if (val) {
- pkg->pkgId = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->pkgId = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "name");
- if (val) {
- pkg->name = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->name = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "arch");
- if (val) {
- pkg->arch = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->arch = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "version");
- if (val) {
- pkg->version = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->version = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "epoch");
- if (val) {
- pkg->epoch = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->epoch = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "release");
- if (val) {
- pkg->release = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->release = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "summary");
- if (val) {
- pkg->summary = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->summary = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "description");
- if (val) {
- pkg->description = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->description = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "url");
- if (val) {
- pkg->url = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->url = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "time_file");
pkg->time_build = num;
val = PyDict_GetItemString($input, "rpm_license");
- if (val) {
- pkg->rpm_license = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_license = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "rpm_vendor");
- if (val) {
- pkg->rpm_vendor = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_vendor = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "rpm_group");
- if (val) {
- pkg->rpm_group = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_group = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "rpm_buildhost");
- if (val) {
- pkg->rpm_buildhost = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_buildhost = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "rpm_sourcerpm");
- if (val) {
- pkg->rpm_sourcerpm = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_sourcerpm = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "rpm_header_start");
pkg->rpm_header_end = num;
val = PyDict_GetItemString($input, "rpm_packager");
- if (val) {
- pkg->rpm_packager = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->rpm_packager = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "size_package");
pkg->size_archive = num;
val = PyDict_GetItemString($input, "location_href");
- if (val) {
- pkg->location_href = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->location_href = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "location_base");
- if (val) {
- pkg->location_base = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->location_base = g_string_chunk_insert(pkg->chunk, str);
}
val = PyDict_GetItemString($input, "checksum_type");
- if (val) {
- pkg->checksum_type = PyString_AsString(val);
+ if (val) str = PyString_AsString(val);
+ if (val && str) {
+ pkg->checksum_type = g_string_chunk_insert(pkg->chunk, str);
}
PyObject *type = PyTuple_GetItem(file_tuple, 1);
if (name && type && PyString_Check(name), PyString_Check(type)) {
PackageFile *pkg_f = package_file_new();
- pkg_f->name = PyString_AsString(name);
- pkg_f->type = PyString_AsString(type);
+ pkg_f->name = g_string_chunk_insert(pkg->chunk, PyString_AsString(name));
+ pkg_f->type = g_string_chunk_insert(pkg->chunk, PyString_AsString(type));
pkg->files = g_slist_append(pkg->files, pkg_f);
}
}
continue;
}
Dependency *pkg_d = dependency_new();
- pkg_d->name = PyString_AsString(name);
+ pkg_d->name = g_string_chunk_insert(pkg->chunk, PyString_AsString(name));
if (pre && PyInt_Check(pre)) {
pkg_d->pre = PyInt_AsLong(pre);
if (!flags || !PyString_Check(flags)) {
continue;
}
- pkg_d->flags = PyString_AsString(flags);
+ pkg_d->flags = g_string_chunk_insert(pkg->chunk, PyString_AsString(flags));
if (epoch && PyString_Check(epoch)) {
- pkg_d->epoch = PyString_AsString(epoch);
+ pkg_d->epoch = g_string_chunk_insert(pkg->chunk, PyString_AsString(epoch));
}
if (version && PyString_Check(version)) {
- pkg_d->version = PyString_AsString(version);
+ pkg_d->version = g_string_chunk_insert(pkg->chunk, PyString_AsString(version));
}
if (release && PyString_Check(release)) {
- pkg_d->release = PyString_AsString(release);
+ pkg_d->release = g_string_chunk_insert(pkg->chunk, PyString_AsString(release));
}
*dep_list = g_slist_append(*dep_list, pkg_d);
&& PyString_Check(author) && PyString_Check(changelog)) {
ChangelogEntry *pkg_ch = changelog_entry_new();
pkg_ch->date = PyLong_AsLong(date);
- pkg_ch->author = PyString_AsString(author);
- pkg_ch->changelog = PyString_AsString(changelog);
+ pkg_ch->author = g_string_chunk_insert(pkg->chunk, PyString_AsString(author));
+ pkg_ch->changelog = g_string_chunk_insert(pkg->chunk, PyString_AsString(changelog));
pkg->changelogs = g_slist_append(pkg->changelogs, pkg_ch);
}
}