X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fretrieval.c;h=e041a2faeb3612d31455edbb7f6974190c534468;hp=eecea4c1cef4d7c92d89b22a701ef6b6b741c7b4;hb=62fd62f25a6893d042c4c87f8c770929fd8cf95d;hpb=ca44977409b92a8b1c7bfbc913a6422edc41d1d5 diff --git a/src/retrieval.c b/src/retrieval.c index eecea4c..e041a2f 100644 --- a/src/retrieval.c +++ b/src/retrieval.c @@ -1,8 +1,8 @@ /* - * Copyright (C) 2005-2006, Index Data ApS + * Copyright (C) 2005-2007, Index Data ApS * See the file LICENSE for details. * - * $Id: retrieval.c,v 1.13 2006-12-12 10:41:38 marc Exp $ + * $Id: retrieval.c,v 1.17 2007-03-19 14:40:07 adam Exp $ */ /** * \file retrieval.c @@ -88,7 +88,7 @@ void yaz_retrieval_destroy(yaz_retrieval_t p) { yaz_retrieval_reset(p); odr_destroy(p->odr); - wrbuf_free(p->wr_error, 1); + wrbuf_destroy(p->wr_error); xfree(p->path); xfree(p); } @@ -166,8 +166,9 @@ static int conf_retrieval(yaz_retrieval_t p, const xmlNode *ptr) el->record_conv = 0; /* OK to have no 'backend' sub content */ for (ptr = ptr->children; ptr; ptr = ptr->next) { - if (ptr->type == XML_ELEMENT_NODE - && 0 != strcmp((const char *) ptr->name, "backend")){ + if (ptr->type != XML_ELEMENT_NODE) + continue; + if (strcmp((const char *) ptr->name, "backend")){ wrbuf_printf(p->wr_error, "Element : expected" " zero or one element , got <%s>", (const char *) ptr->name); @@ -234,10 +235,8 @@ static int conf_retrieval(yaz_retrieval_t p, const xmlNode *ptr) return 0; } -int yaz_retrieval_configure(yaz_retrieval_t p, const void *ptr_v) +int yaz_retrieval_configure(yaz_retrieval_t p, const xmlNode *ptr) { - const xmlNode *ptr = ptr_v; - yaz_retrieval_reset(p); if (ptr && ptr->type == XML_ELEMENT_NODE && @@ -352,7 +351,7 @@ int yaz_retrieval_request(yaz_retrieval_t p, const char *yaz_retrieval_get_error(yaz_retrieval_t p) { - return wrbuf_buf(p->wr_error); + return wrbuf_cstr(p->wr_error); } void yaz_retrieval_set_path(yaz_retrieval_t p, const char *path)