bindings: don't let str(Datamatch) change the strings, instead create a copy
authorMichael Schroeder <mls@suse.de>
Tue, 4 Mar 2014 14:36:27 +0000 (15:36 +0100)
committerMichael Schroeder <mls@suse.de>
Tue, 4 Mar 2014 14:37:12 +0000 (15:37 +0100)
Also always set the SEARCH_FILES and SEARCH_CHECKSUMS flags.

bindings/solv.i

index afabd01..b7fd80d 100644 (file)
@@ -1956,9 +1956,10 @@ rb_eval_string(
   %rename("str") __str__;
 #endif
   const char *__str__() {
-    if (!repodata_stringify($self->pool, $self->data, $self->key, &$self->kv, $self->flags))
+    KeyValue kv = $self->kv;
+    if (!repodata_stringify($self->pool, $self->data, $self->key, &kv, SEARCH_FILES | SEARCH_CHECKSUMS))
       return "";
-    return $self->kv.str;
+    return kv.str;
   }
 }