From 88e1e4c8778561a0d2d9d75cb2b65191023298b3 Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Mon, 3 Mar 2014 15:01:48 +0100 Subject: [PATCH] fix Datamatcher's idstr() method when calld for dirs --- bindings/solv.i | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bindings/solv.i b/bindings/solv.i index 5c0cfb8..6bc34b1 100644 --- a/bindings/solv.i +++ b/bindings/solv.i @@ -1902,7 +1902,11 @@ rb_eval_string( return $self->kv.id; } const char *idstr() { - return pool_id2str($self->pool, $self->kv.id); + if ($self->data && ($self->key->type == REPOKEY_TYPE_DIR || $self->key->type == REPOKEY_TYPE_DIRSTRARRAY || $self->key->type == REPOKEY_TYPE_DIRNUMNUMARRAY)) + return repodata_dir2str($self->data, $self->kv.id, 0); + if ($self->data && $self->data->localpool) + return stringpool_id2str(&self->data->spool, $self->kv.id); + return pool_id2str($self->pool, $self->kv.id); } const char *str() { return $self->kv.str; -- 2.7.4