X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fcqltransform.c;h=de777d025221ce04459dcbfa0b92f6c7f7451284;hb=9773a01f6dae65e5f9c424b3f2bc7454b8270cfc;hp=4302f48a3356b4adeba2f9280a140290caa80f79;hpb=2788a4851b551e1a3efb320a2878b809f2d8a9d7;p=yaz-moved-to-github.git diff --git a/src/cqltransform.c b/src/cqltransform.c index 4302f48..de777d0 100644 --- a/src/cqltransform.c +++ b/src/cqltransform.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2009 Index Data + * Copyright (C) 1995-2010 Index Data * See the file LICENSE for details. */ @@ -107,7 +107,7 @@ static int cql_transform_parse_tok_line(cql_transform_t ct, t = yaz_tok_move(tp); } elem->attributeType = nmem_intdup(ct->nmem, 0); - if (sscanf(wrbuf_cstr(type_str), "%d", elem->attributeType) + if (sscanf(wrbuf_cstr(type_str), ODR_INT_PRINTF, elem->attributeType) != 1) { wrbuf_destroy(type_str); @@ -350,7 +350,7 @@ const char *cql_lookup_reverse(cql_transform_t ct, } if (i == e->attr_list.num_attributes) - return e->pattern; + return e->pattern + clen; } } return 0; @@ -435,7 +435,7 @@ int cql_pr_attr_uri(cql_transform_t ct, const char *category, int i; while (*cp1 && *cp1 != ' ') cp1++; - if (cp1 - cp0 >= sizeof(buf)) + if (cp1 - cp0 >= (ptrdiff_t) sizeof(buf)) break; memcpy(buf, cp0, cp1 - cp0); buf[cp1-cp0] = 0; @@ -951,6 +951,7 @@ void cql_transform_set_error(cql_transform_t ct, int error, const char *addinfo) /* * Local variables: * c-basic-offset: 4 + * c-file-style: "Stroustrup" * indent-tabs-mode: nil * End: * vim: shiftwidth=4 tabstop=8 expandtab