{
strcpy(type, "xml");
}
+ else if (!strncmp(s, "txml", 4))
+ {
+ const char *cp = strchr(s, ';');
+ yaz_snprintf(type, 80, "txml; charset=%s", cp ? cp+1 : "marc-8s");
+ }
else
return -1;
return 0;
strcpy(type, "xml");
return 0;
}
+ else if (!strcmp(syntax, "TXML"))
+ {
+ strcpy(type, "txml");
+ return 0;
+ }
else if (!strcmp(syntax, "USmarc") || !strcmp(syntax, "MARC21"))
{
strcpy(type, "xml; charset=marc8-s");
assert(*ccp == c);
*ccp = c->next;
+ c->database = 0;
c->session = 0;
c->next = 0;
}
const char *client_get_url(struct client *cl)
{
- return client_get_database(cl)->database->url;
+ if (cl->database)
+ return client_get_database(cl)->database->url;
+ else
+ return "NOURL";
}
void client_set_maxrecs(struct client *cl, int v)