Separate the logging utilities for queries in two . The multi-line
[yaz-moved-to-github.git] / src / srw.c
index 68d2056..e926af4 100644 (file)
--- a/src/srw.c
+++ b/src/srw.c
@@ -2,7 +2,7 @@
  * Copyright (C) 1995-2005, Index Data ApS
  * See the file LICENSE for details.
  *
- * $Id: srw.c,v 1.39 2005-11-11 22:06:46 adam Exp $
+ * $Id: srw.c,v 1.42 2006-01-20 10:34:52 adam Exp $
  */
 /**
  * \file srw.c
@@ -291,8 +291,6 @@ static int yaz_srw_record(ODR o, xmlNodePtr pptr, Z_SRW_record *rec,
                 match_xsd_string_n(data_ptr, "recordData", o, 
                                    &rec->recordData_buf, &rec->recordData_len);
                 break;
-            default:
-                /* need some way to signal diagnostic here */
             }
         }
         rec->recordPacking = pack;
@@ -323,7 +321,7 @@ static int yaz_srw_record(ODR o, xmlNodePtr pptr, Z_SRW_record *rec,
         }
         if (rec->recordPosition)
             add_xsd_integer(ptr, "recordPosition", rec->recordPosition );
-        if (*extra)
+        if (extra && *extra)
         {
             xmlNodePtr rptr = xmlNewChild(ptr, 0, BAD_CAST "extraRecordData",
                                           0);
@@ -369,7 +367,8 @@ static int yaz_srw_records(ODR o, xmlNodePtr pptr, Z_SRW_record **recs,
         {
             xmlNodePtr rptr = xmlNewChild(pptr, 0, BAD_CAST "record",
                                           0);
-            yaz_srw_record(o, rptr, (*recs)+i, *extra + i, client_data, ns);
+            yaz_srw_record(o, rptr, (*recs)+i, (*extra ? *extra + i : 0),
+                           client_data, ns);
         }
     }
     return 0;
@@ -1102,7 +1101,8 @@ int yaz_ucp_codec(ODR o, void * vptr, Z_SRW_PDU **handler_data,
         else if ((*p)->which == Z_SRW_update_response)
         {
             Z_SRW_updateResponse *res = (*p)->u.update_response;
-            xmlNodePtr ptr = xmlNewChild(pptr, 0, "updateResponse", 0);
+            xmlNodePtr ptr = xmlNewChild(pptr, 0, (xmlChar *) 
+                                         "updateResponse", 0);
            ns_srw = xmlNewNs(ptr, ns, "zu");
            xmlSetNs(ptr, ns_srw);