X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fgrs1disp.c;h=9195ea0ad861f68c0f8886a6492e049b06a35c0a;hb=3b792849c676d96918850e2f1e0af87a75278501;hp=ddf2928aaac362629c6806204890663faa20952a;hpb=967a1293ee622053b05995d46d63085f6aa23204;p=yaz-moved-to-github.git diff --git a/src/grs1disp.c b/src/grs1disp.c index ddf2928..9195ea0 100644 --- a/src/grs1disp.c +++ b/src/grs1disp.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2007, Index Data ApS * See the file LICENSE for details. * - * $Id: grs1disp.c,v 1.6 2007-03-12 16:16:49 adam Exp $ + * $Id: grs1disp.c,v 1.8 2007-05-08 08:22:36 adam Exp $ */ /** @@ -16,6 +16,7 @@ #include #include +#include static void display_variant(WRBUF w, Z_Variant *v, int level) { @@ -76,17 +77,17 @@ static void display_grs1(WRBUF w, Z_GenericRecord *r, int level) } else if (t->content->which == Z_ElementData_oid) { - int *ip = t->content->u.oid; - oident *oent; - - if ((oent = oid_getentbyoid(t->content->u.oid))) - wrbuf_printf(w, "OID: %s\n", oent->desc); - else + Odr_oid *ip = t->content->u.oid; + + if (ip) { - wrbuf_printf(w, "{"); - while (ip && *ip >= 0) - wrbuf_printf(w, " %d", *(ip++)); - wrbuf_printf(w, " }\n"); + char oid_name_str[OID_STR_MAX]; + oid_class oclass; + const char *oid_name + = yaz_oid_to_string_buf(ip, &oclass, oid_name_str); + + if (oid_name) + wrbuf_printf(w, "OID: %s\n", oid_name); } } else if (t->content->which == Z_ElementData_noDataRequested)