projects
/
phpyaz-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
41e62c7
)
Remove trailing whitespace
author
Adam Dickmeiss
<adam@indexdata.dk>
Mon, 19 Nov 2012 11:07:57 +0000
(12:07 +0100)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Mon, 19 Nov 2012 11:07:57 +0000
(12:07 +0100)
php_yaz.c
patch
|
blob
|
history
php_yaz.h
patch
|
blob
|
history
diff --git
a/php_yaz.c
b/php_yaz.c
index
469d254
..
a425175
100644
(file)
--- a/
php_yaz.c
+++ b/
php_yaz.c
@@
-180,7
+180,7
@@
zend_function_entry yaz_functions [] = {
static void get_assoc(INTERNAL_FUNCTION_PARAMETERS, zval *id, Yaz_Association *assocp)
{
Yaz_Association *as = 0;
static void get_assoc(INTERNAL_FUNCTION_PARAMETERS, zval *id, Yaz_Association *assocp)
{
Yaz_Association *as = 0;
-
+
*assocp = 0;
#ifdef ZTS
tsrm_mutex_lock(yaz_mutex);
*assocp = 0;
#ifdef ZTS
tsrm_mutex_lock(yaz_mutex);
@@
-323,12
+323,12
@@
PHP_FUNCTION(yaz_connect)
if (GET_PARM2(&zurl, &user) == FAILURE) {
WRONG_PARAM_COUNT;
}
if (GET_PARM2(&zurl, &user) == FAILURE) {
WRONG_PARAM_COUNT;
}
-
+
if (Z_TYPE_PP(&user) == IS_ARRAY) {
long *persistent_val;
long *piggyback_val;
HashTable *ht = Z_ARRVAL_PP(&user);
if (Z_TYPE_PP(&user) == IS_ARRAY) {
long *persistent_val;
long *piggyback_val;
HashTable *ht = Z_ARRVAL_PP(&user);
-
+
sru_str = array_lookup_string(ht, "sru");
sru_version_str = array_lookup_string(ht, "sru_version");
user_str = array_lookup_string(ht, "user");
sru_str = array_lookup_string(ht, "sru");
sru_version_str = array_lookup_string(ht, "sru_version");
user_str = array_lookup_string(ht, "user");
@@
-406,7
+406,7
@@
PHP_FUNCTION(yaz_connect)
#ifdef ZTS
tsrm_mutex_unlock(yaz_mutex);
#endif
#ifdef ZTS
tsrm_mutex_unlock(yaz_mutex);
#endif
- sprintf(msg, "No YAZ handles available. max_links=%d",
+ sprintf(msg, "No YAZ handles available. max_links=%d",
max_links);
php_error_docref(NULL TSRMLS_CC, E_WARNING,
"No YAZ handles available. max_links=%ld",
max_links);
php_error_docref(NULL TSRMLS_CC, E_WARNING,
"No YAZ handles available. max_links=%ld",
@@
-543,7
+543,7
@@
PHP_FUNCTION(yaz_search)
}
else
{
}
else
{
- php_error_docref(NULL TSRMLS_CC, E_WARNING,
+ php_error_docref(NULL TSRMLS_CC, E_WARNING,
"Invalid query type %s", type_str);
}
release_assoc(p);
"Invalid query type %s", type_str);
}
release_assoc(p);
@@
-720,7
+720,7
@@
PHP_FUNCTION(yaz_addinfo)
return_value->value.str.len = strlen(addinfo);
return_value->value.str.val = estrndup(addinfo, return_value->value.str.len);
return_value->type = IS_STRING;
return_value->value.str.len = strlen(addinfo);
return_value->value.str.val = estrndup(addinfo, return_value->value.str.len);
return_value->type = IS_STRING;
- }
+ }
release_assoc(p);
}
/* }}} */
release_assoc(p);
}
/* }}} */
@@
-757,7
+757,7
@@
PHP_FUNCTION(yaz_hits)
const char *str =
ZOOM_resultset_option_get(p->zoom_set, "resultSetStatus");
if (str)
const char *str =
ZOOM_resultset_option_get(p->zoom_set, "resultSetStatus");
if (str)
- add_assoc_string(searchresult, "resultSetStatus",
+ add_assoc_string(searchresult, "resultSetStatus",
(char *) str, 1);
}
if (searchresult)
(char *) str, 1);
}
if (searchresult)
@@
-778,7
+778,7
@@
PHP_FUNCTION(yaz_hits)
MAKE_STD_ZVAL(zval_element);
array_init(zval_element);
add_next_index_zval(searchresult, zval_element);
MAKE_STD_ZVAL(zval_element);
array_init(zval_element);
add_next_index_zval(searchresult, zval_element);
-
+
sprintf(opt_name, "searchresult.%d.id", i);
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
sprintf(opt_name, "searchresult.%d.id", i);
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
@@
-789,7
+789,7
@@
PHP_FUNCTION(yaz_hits)
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
add_assoc_long(zval_element, "count", atoi(opt_value));
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
add_assoc_long(zval_element, "count", atoi(opt_value));
-
+
sprintf(opt_name, "searchresult.%d.subquery.term", i);
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
sprintf(opt_name, "searchresult.%d.subquery.term", i);
opt_value = ZOOM_resultset_option_get(p->zoom_set, opt_name);
if (opt_value)
@@
-831,7
+831,7
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
Z_GenericRecord *r = odr_malloc(o, sizeof(*r));
r->elements = odr_malloc(o, sizeof(*r->elements) * max_elements);
r->num_elements = 0;
Z_GenericRecord *r = odr_malloc(o, sizeof(*r));
r->elements = odr_malloc(o, sizeof(*r->elements) * max_elements);
r->num_elements = 0;
-
+
record_length = atoi_n(buf, 5);
if (record_length < 25) {
return 0;
record_length = atoi_n(buf, 5);
if (record_length < 25) {
return 0;
@@
-839,11
+839,11
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
indicator_length = atoi_n(buf + 10, 1);
identifier_length = atoi_n(buf + 11, 1);
base_address = atoi_n(buf + 12, 5);
indicator_length = atoi_n(buf + 10, 1);
identifier_length = atoi_n(buf + 11, 1);
base_address = atoi_n(buf + 12, 5);
-
+
length_data_entry = atoi_n(buf + 20, 1);
length_starting = atoi_n(buf + 21, 1);
length_implementation = atoi_n(buf + 22, 1);
length_data_entry = atoi_n(buf + 20, 1);
length_starting = atoi_n(buf + 21, 1);
length_implementation = atoi_n(buf + 22, 1);
-
+
for (entry_p = 24; buf[entry_p] != ISO2709_FS; ) {
entry_p += 3 + length_data_entry + length_starting;
if (entry_p >= record_length) {
for (entry_p = 24; buf[entry_p] != ISO2709_FS; ) {
entry_p += 3 + length_data_entry + length_starting;
if (entry_p >= record_length) {
@@
-862,7
+862,7
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->tagValue->u.string = odr_strdup(o, "leader");
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->tagValue->u.string = odr_strdup(o, "leader");
-
+
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_string;
tag->content->u.string = odr_strdupn(o, buf, 24);
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_string;
tag->content->u.string = odr_strdupn(o, buf, 24);
@@
-876,14
+876,14
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
int i;
char tag_str[4];
int identifier_flag = 1;
int i;
char tag_str[4];
int identifier_flag = 1;
-
+
memcpy(tag_str, buf+entry_p, 3);
entry_p += 3;
tag_str[3] = '\0';
memcpy(tag_str, buf+entry_p, 3);
entry_p += 3;
tag_str[3] = '\0';
-
+
if ((r->num_elements + 1) >= max_elements) {
Z_TaggedElement **tmp = r->elements;
if ((r->num_elements + 1) >= max_elements) {
Z_TaggedElement **tmp = r->elements;
-
+
/* double array space, throw away old buffer (nibble memory) */
r->elements = odr_malloc(o, sizeof(*r->elements) * (max_elements *= 2));
memcpy(r->elements, tmp, r->num_elements * sizeof(*tmp));
/* double array space, throw away old buffer (nibble memory) */
r->elements = odr_malloc(o, sizeof(*r->elements) * (max_elements *= 2));
memcpy(r->elements, tmp, r->num_elements * sizeof(*tmp));
@@
-897,16
+897,16
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->tagValue->u.string = odr_strdup(o, tag_str);
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->tagValue->u.string = odr_strdup(o, tag_str);
-
+
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_subtree;
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_subtree;
-
+
tag->content->u.subtree = odr_malloc(o, sizeof(*tag->content->u.subtree));
tag->content->u.subtree->elements = odr_malloc(o, sizeof(*r->elements));
tag->content->u.subtree->num_elements = 1;
tag->content->u.subtree = odr_malloc(o, sizeof(*tag->content->u.subtree));
tag->content->u.subtree->elements = odr_malloc(o, sizeof(*r->elements));
tag->content->u.subtree->num_elements = 1;
-
+
tag = tag->content->u.subtree->elements[0] = odr_malloc(o, sizeof(**tag->content->u.subtree->elements));
tag = tag->content->u.subtree->elements[0] = odr_malloc(o, sizeof(**tag->content->u.subtree->elements));
-
+
tag->tagType = odr_malloc(o, sizeof(*tag->tagType));
*tag->tagType = 3;
tag->tagOccurrence = 0;
tag->tagType = odr_malloc(o, sizeof(*tag->tagType));
*tag->tagType = 3;
tag->tagOccurrence = 0;
@@
-915,7
+915,7
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->content = odr_malloc(o, sizeof(*tag->content));
-
+
data_length = atoi_n(buf + entry_p, length_data_entry);
entry_p += length_data_entry;
data_offset = atoi_n(buf + entry_p, length_starting);
data_length = atoi_n(buf + entry_p, length_data_entry);
entry_p += length_data_entry;
data_offset = atoi_n(buf + entry_p, length_starting);
@@
-930,31
+930,31
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
} else if (!memcmp(tag_str, "00", 2)) {
identifier_flag = 0;
}
} else if (!memcmp(tag_str, "00", 2)) {
identifier_flag = 0;
}
-
+
if (identifier_flag && indicator_length) {
/* indicator */
tag->tagValue->u.string = odr_malloc(o, indicator_length + 1);
memcpy(tag->tagValue->u.string, buf + i, indicator_length);
tag->tagValue->u.string[indicator_length] = '\0';
i += indicator_length;
if (identifier_flag && indicator_length) {
/* indicator */
tag->tagValue->u.string = odr_malloc(o, indicator_length + 1);
memcpy(tag->tagValue->u.string, buf + i, indicator_length);
tag->tagValue->u.string[indicator_length] = '\0';
i += indicator_length;
-
+
tag->content->which = Z_ElementData_subtree;
tag->content->u.subtree = odr_malloc(o, sizeof(*tag->content->u.subtree));
tag->content->u.subtree->elements = odr_malloc(o, 256 * sizeof(*r->elements));
tag->content->u.subtree->num_elements = 0;
tag->content->which = Z_ElementData_subtree;
tag->content->u.subtree = odr_malloc(o, sizeof(*tag->content->u.subtree));
tag->content->u.subtree->elements = odr_malloc(o, 256 * sizeof(*r->elements));
tag->content->u.subtree->num_elements = 0;
-
+
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_FS && i < end_offset) {
int i0;
/* prepare tag */
Z_TaggedElement *parent_tag = tag;
Z_TaggedElement *tag = odr_malloc(o, sizeof(*tag));
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_FS && i < end_offset) {
int i0;
/* prepare tag */
Z_TaggedElement *parent_tag = tag;
Z_TaggedElement *tag = odr_malloc(o, sizeof(*tag));
-
+
if (parent_tag->content->u.subtree->num_elements < 256) {
parent_tag->content->u.subtree->elements[
parent_tag->content->u.subtree->num_elements++] = tag;
}
if (parent_tag->content->u.subtree->num_elements < 256) {
parent_tag->content->u.subtree->elements[
parent_tag->content->u.subtree->num_elements++] = tag;
}
-
+
tag->tagType = odr_malloc(o, sizeof(*tag->tagType));
*tag->tagType = 3;
tag->tagOccurrence = 0;
tag->tagType = odr_malloc(o, sizeof(*tag->tagType));
*tag->tagType = 3;
tag->tagOccurrence = 0;
@@
-962,34
+962,34
@@
static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o)
tag->appliedVariant = 0;
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
tag->appliedVariant = 0;
tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue));
tag->tagValue->which = Z_StringOrNumeric_string;
-
+
/* sub field */
tag->tagValue->u.string = odr_malloc(o, identifier_length);
memcpy(tag->tagValue->u.string, buf + i + 1, identifier_length - 1);
tag->tagValue->u.string[identifier_length - 1] = '\0';
i += identifier_length;
/* sub field */
tag->tagValue->u.string = odr_malloc(o, identifier_length);
memcpy(tag->tagValue->u.string, buf + i + 1, identifier_length - 1);
tag->tagValue->u.string[identifier_length - 1] = '\0';
i += identifier_length;
-
+
/* data ... */
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_string;
/* data ... */
tag->content = odr_malloc(o, sizeof(*tag->content));
tag->content->which = Z_ElementData_string;
-
+
i0 = i;
i0 = i;
- while ( buf[i] != ISO2709_RS &&
- buf[i] != ISO2709_IDFS &&
+ while ( buf[i] != ISO2709_RS &&
+ buf[i] != ISO2709_IDFS &&
buf[i] != ISO2709_FS && i < end_offset) {
i++;
}
buf[i] != ISO2709_FS && i < end_offset) {
i++;
}
-
+
tag->content->u.string = odr_malloc(o, i - i0 + 1);
memcpy(tag->content->u.string, buf + i0, i - i0);
tag->content->u.string[i - i0] = '\0';
}
} else {
int i0 = i;
tag->content->u.string = odr_malloc(o, i - i0 + 1);
memcpy(tag->content->u.string, buf + i0, i - i0);
tag->content->u.string[i - i0] = '\0';
}
} else {
int i0 = i;
-
+
tag->tagValue->u.string = "@";
tag->content->which = Z_ElementData_string;
tag->tagValue->u.string = "@";
tag->content->which = Z_ElementData_string;
-
+
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_FS && i < end_offset) {
i++;
}
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_FS && i < end_offset) {
i++;
}
@@
-1076,7
+1076,7
@@
static void retval_array3_grs1(zval *return_value, Z_GenericRecord *p,
zval *zval_list;
Z_TaggedElement *e = p->elements[i];
char tagstr[32], *tag = 0;
zval *zval_list;
Z_TaggedElement *e = p->elements[i];
char tagstr[32], *tag = 0;
-
+
if (e->tagValue->which == Z_StringOrNumeric_numeric)
{
sprintf(tagstr, ODR_INT_PRINTF, *e->tagValue->u.numeric);
if (e->tagValue->which == Z_StringOrNumeric_numeric)
{
sprintf(tagstr, ODR_INT_PRINTF, *e->tagValue->u.numeric);
@@
-1098,7
+1098,7
@@
static void retval_array3_grs1(zval *return_value, Z_GenericRecord *p,
MAKE_STD_ZVAL(zval_list);
array_init(zval_list);
add_assoc_zval(return_value, tag, zval_list);
MAKE_STD_ZVAL(zval_list);
array_init(zval_list);
add_assoc_zval(return_value, tag, zval_list);
-
+
tl = nmem_malloc(nmem, sizeof(*tl));
tl->tag = nmem_strdup(nmem, tag);
tl->zval_list = zval_list;
tl = nmem_malloc(nmem, sizeof(*tl));
tl->tag = nmem_strdup(nmem, tag);
tl->zval_list = zval_list;
@@
-1136,11
+1136,11
@@
static void retval_array3_grs1(zval *return_value, Z_GenericRecord *p,
{
char ind_idx[5];
char ind_val[2];
{
char ind_idx[5];
char ind_val[2];
-
+
sprintf(ind_idx, "ind%d", i+1);
ind_val[0] = tag[i];
ind_val[1] = '\0';
sprintf(ind_idx, "ind%d", i+1);
ind_val[0] = tag[i];
ind_val[1] = '\0';
-
+
add_assoc_string(zval_element, ind_idx, ind_val, 1);
}
for (i = 0; i<sub->num_elements; i++)
add_assoc_string(zval_element, ind_idx, ind_val, 1);
}
for (i = 0; i<sub->num_elements; i++)
@@
-1154,11
+1154,11
@@
static void retval_array3_grs1(zval *return_value, Z_GenericRecord *p,
}
else if (e->tagValue->which == Z_StringOrNumeric_string)
tag = e->tagValue->u.string, zval_element;
}
else if (e->tagValue->which == Z_StringOrNumeric_string)
tag = e->tagValue->u.string, zval_element;
-
+
if (tag && e->content->which == Z_ElementData_string)
{
const char *v = cvt_string(e->content->u.string, cvt);
if (tag && e->content->which == Z_ElementData_string)
{
const char *v = cvt_string(e->content->u.string, cvt);
- add_assoc_string(zval_element, (char*) tag, (char*) v,
+ add_assoc_string(zval_element, (char*) tag, (char*) v,
1);
}
}
1);
}
}
@@
-1178,18
+1178,18
@@
static void retval_array2_grs1(zval *return_value, Z_GenericRecord *p,
struct cvt_handle *cvt)
{
int i;
struct cvt_handle *cvt)
{
int i;
-
+
array_init(return_value);
array_init(return_value);
-
+
for (i = 0; i<p->num_elements; i++)
{
zval *zval_element;
zval *zval_sub;
Z_TaggedElement *e = p->elements[i];
for (i = 0; i<p->num_elements; i++)
{
zval *zval_element;
zval *zval_sub;
Z_TaggedElement *e = p->elements[i];
-
+
MAKE_STD_ZVAL(zval_element);
array_init(zval_element);
MAKE_STD_ZVAL(zval_element);
array_init(zval_element);
-
+
if (e->tagType)
add_assoc_long(zval_element, "tagType", (long) *e->tagType);
if (e->tagType)
add_assoc_long(zval_element, "tagType", (long) *e->tagType);
@@
-1273,7
+1273,7
@@
static void retval_array1_grs1(zval *return_value, Z_GenericRecord *p,
ALLOC_ZVAL(my_zval);
array_init(my_zval);
INIT_PZVAL(my_zval);
ALLOC_ZVAL(my_zval);
array_init(my_zval);
INIT_PZVAL(my_zval);
-
+
add_next_index_string(my_zval, tag, 1);
switch (e->content->which) {
add_next_index_string(my_zval, tag, 1);
switch (e->content->which) {
@@
-1316,7
+1316,7
@@
static void ext_grs1(zval *return_value, char type_args[][60],
cvt = cvt_open(type_args[3], type_args[2]);
else
cvt = cvt_open(0, 0);
cvt = cvt_open(type_args[3], type_args[2]);
else
cvt = cvt_open(0, 0);
-
+
if (ext->which == Z_External_grs1) {
retval_array1_grs1(return_value, ext->u.grs1, cvt);
} else if (ext->which == Z_External_octet) {
if (ext->which == Z_External_grs1) {
retval_array1_grs1(return_value, ext->u.grs1, cvt);
} else if (ext->which == Z_External_octet) {
@@
-1372,7
+1372,7
@@
PHP_FUNCTION(yaz_record)
type = "render";
}
if (r) {
type = "render";
}
if (r) {
- if (!strcmp(type_args[0], "array") ||
+ if (!strcmp(type_args[0], "array") ||
!strcmp(type_args[0], "array1"))
{
ext_grs1(return_value, type_args, r, retval_array1_grs1);
!strcmp(type_args[0], "array1"))
{
ext_grs1(return_value, type_args, r, retval_array1_grs1);
@@
-1391,7
+1391,7
@@
PHP_FUNCTION(yaz_record)
}
else
{
}
else
{
- php_error_docref(NULL TSRMLS_CC, E_WARNING,
+ php_error_docref(NULL TSRMLS_CC, E_WARNING,
"Bad yaz_record type %s - or unable "
"to return record with type given", type);
}
"Bad yaz_record type %s - or unable "
"to return record with type given", type);
}
@@
-1479,7
+1479,7
@@
PHP_FUNCTION(yaz_set_option)
HashPosition pos;
HashTable *ht;
zval **ent;
HashPosition pos;
HashTable *ht;
zval **ent;
-
+
ht = Z_ARRVAL_PP(&pval_ar);
for(zend_hash_internal_pointer_reset_ex(ht, &pos);
zend_hash_get_current_data_ex(ht, (void**) &ent, &pos) == SUCCESS;
ht = Z_ARRVAL_PP(&pval_ar);
for(zend_hash_internal_pointer_reset_ex(ht, &pos);
zend_hash_get_current_data_ex(ht, (void**) &ent, &pos) == SUCCESS;
@@
-1507,7
+1507,7
@@
PHP_FUNCTION(yaz_set_option)
convert_to_string_ex(&pval_name);
convert_to_string_ex(&pval_val);
option_set(p, pval_name->value.str.val, pval_val->value.str.val);
convert_to_string_ex(&pval_name);
convert_to_string_ex(&pval_val);
option_set(p, pval_name->value.str.val, pval_val->value.str.val);
-
+
release_assoc(p);
} else {
WRONG_PARAM_COUNT;
release_assoc(p);
} else {
WRONG_PARAM_COUNT;
@@
-1555,6
+1555,7
@@
PHP_FUNCTION(yaz_range)
{
zval *pval_id, *pval_start, *pval_number;
Yaz_Association p;
{
zval *pval_id, *pval_start, *pval_number;
Yaz_Association p;
+ int start;
if (ZEND_NUM_ARGS() != 3 ||
GET_PARM3( &pval_id, &pval_start, &pval_number) == FAILURE) {
if (ZEND_NUM_ARGS() != 3 ||
GET_PARM3( &pval_id, &pval_start, &pval_number) == FAILURE) {
@@
-1564,7
+1565,9
@@
PHP_FUNCTION(yaz_range)
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
convert_to_long_ex(&pval_start);
convert_to_long_ex(&pval_number);
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
convert_to_long_ex(&pval_start);
convert_to_long_ex(&pval_number);
- option_set_int(p, "start", pval_start->value.lval - 1);
+ start = pval_start->value.lval;
+ count = pval_number->value.lval;
+ option_set_int(p, "start", start > 0 ? start - 1 : 0);
option_set_int(p, "count", pval_number->value.lval);
release_assoc(p);
}
option_set_int(p, "count", pval_number->value.lval);
release_assoc(p);
}
@@
-1619,7
+1622,7
@@
PHP_FUNCTION(yaz_itemorder)
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p) {
ZOOM_options options = ZOOM_options_create();
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p) {
ZOOM_options options = ZOOM_options_create();
-
+
ZOOM_options_set_callback(options,
ill_array_lookup, Z_ARRVAL_PP(&pval_package));
ZOOM_package_destroy(p->zoom_package);
ZOOM_options_set_callback(options,
ill_array_lookup, Z_ARRVAL_PP(&pval_package));
ZOOM_package_destroy(p->zoom_package);
@@
-1638,7
+1641,7
@@
PHP_FUNCTION(yaz_es)
{
zval *pval_id, *pval_type, *pval_package;
Yaz_Association p;
{
zval *pval_id, *pval_type, *pval_package;
Yaz_Association p;
-
+
if (ZEND_NUM_ARGS() != 3 ||
GET_PARM3( &pval_id, &pval_type, &pval_package) == FAILURE) {
WRONG_PARAM_COUNT;
if (ZEND_NUM_ARGS() != 3 ||
GET_PARM3( &pval_id, &pval_type, &pval_package) == FAILURE) {
WRONG_PARAM_COUNT;
@@
-1647,7
+1650,7
@@
PHP_FUNCTION(yaz_es)
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Expected string parameter");
RETURN_FALSE;
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Expected string parameter");
RETURN_FALSE;
}
-
+
if (Z_TYPE_PP(&pval_package) != IS_ARRAY) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Expected array parameter");
RETURN_FALSE;
if (Z_TYPE_PP(&pval_package) != IS_ARRAY) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Expected array parameter");
RETURN_FALSE;
@@
-1656,7
+1659,7
@@
PHP_FUNCTION(yaz_es)
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p) {
ZOOM_options options = ZOOM_options_create();
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p) {
ZOOM_options options = ZOOM_options_create();
-
+
ZOOM_options_set_callback(options, ill_array_lookup,
Z_ARRVAL_PP(&pval_package));
ZOOM_package_destroy(p->zoom_package);
ZOOM_options_set_callback(options, ill_array_lookup,
Z_ARRVAL_PP(&pval_package));
ZOOM_package_destroy(p->zoom_package);
@@
-1705,7
+1708,7
@@
PHP_FUNCTION(yaz_scan)
option_set(p, "number", array_lookup_string(flags_ht, "number"));
option_set(p, "position", array_lookup_string(flags_ht, "position"));
option_set(p, "stepSize", array_lookup_string(flags_ht, "stepsize"));
option_set(p, "number", array_lookup_string(flags_ht, "number"));
option_set(p, "position", array_lookup_string(flags_ht, "position"));
option_set(p, "stepSize", array_lookup_string(flags_ht, "stepsize"));
- p->zoom_scan = ZOOM_connection_scan(p->zoom_conn,
+ p->zoom_scan = ZOOM_connection_scan(p->zoom_conn,
Z_STRVAL_PP(&pval_query));
}
release_assoc(p);
Z_STRVAL_PP(&pval_query));
}
release_assoc(p);
@@
-1727,13
+1730,13
@@
PHP_FUNCTION(yaz_es_result)
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p && p->zoom_package) {
get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p);
if (p && p->zoom_package) {
- const char *str = ZOOM_package_option_get(p->zoom_package,
+ const char *str = ZOOM_package_option_get(p->zoom_package,
"targetReference");
"targetReference");
-
+
if (str) {
add_assoc_string(return_value, "targetReference", (char *) str, 1);
}
if (str) {
add_assoc_string(return_value, "targetReference", (char *) str, 1);
}
- str = ZOOM_package_option_get(p->zoom_package,
+ str = ZOOM_package_option_get(p->zoom_package,
"xmlUpdateDoc");
if (str) {
add_assoc_string(return_value, "xmlUpdateDoc", (char *) str, 1);
"xmlUpdateDoc");
if (str) {
add_assoc_string(return_value, "xmlUpdateDoc", (char *) str, 1);
@@
-1778,7
+1781,7
@@
PHP_FUNCTION(yaz_scan_result)
int occ, len;
#endif
int size = ZOOM_scanset_size(p->zoom_scan);
int occ, len;
#endif
int size = ZOOM_scanset_size(p->zoom_scan);
-
+
for (pos = 0; pos < size; pos++) {
const char *term = ZOOM_scanset_term(p->zoom_scan, pos, &occ, &len);
zval *my_zval;
for (pos = 0; pos < size; pos++) {
const char *term = ZOOM_scanset_term(p->zoom_scan, pos, &occ, &len);
zval *my_zval;
@@
-1786,7
+1789,7
@@
PHP_FUNCTION(yaz_scan_result)
ALLOC_ZVAL(my_zval);
array_init(my_zval);
INIT_PZVAL(my_zval);
ALLOC_ZVAL(my_zval);
array_init(my_zval);
INIT_PZVAL(my_zval);
-
+
add_next_index_string(my_zval, "term", 1);
if (term) {
add_next_index_string(my_zval, "term", 1);
if (term) {
@@
-1809,9
+1812,9
@@
PHP_FUNCTION(yaz_scan_result)
if (pval_opt) {
const char *v;
if (pval_opt) {
const char *v;
-
+
add_assoc_long(pval_opt, "number", size);
add_assoc_long(pval_opt, "number", size);
-
+
v = ZOOM_scanset_option_get(p->zoom_scan, "stepSize");
if (v) {
add_assoc_long(pval_opt, "stepsize", atoi(v));
v = ZOOM_scanset_option_get(p->zoom_scan, "stepSize");
if (v) {
add_assoc_long(pval_opt, "stepsize", atoi(v));
@@
-1888,7
+1891,7
@@
PHP_FUNCTION(yaz_ccl_parse)
== FAILURE) {
WRONG_PARAM_COUNT;
}
== FAILURE) {
WRONG_PARAM_COUNT;
}
-
+
zval_dtor(pval_res);
array_init(pval_res);
convert_to_string_ex(&pval_query);
zval_dtor(pval_res);
array_init(pval_res);
convert_to_string_ex(&pval_query);
@@
-1906,14
+1909,14
@@
PHP_FUNCTION(yaz_ccl_parse)
error_code = ccl_parser_get_error(ccl_parser, &error_pos);
add_assoc_long(pval_res, "errorcode", error_code);
error_code = ccl_parser_get_error(ccl_parser, &error_pos);
add_assoc_long(pval_res, "errorcode", error_code);
- if (error_code)
+ if (error_code)
{
{
- add_assoc_string(pval_res, "errorstring",
+ add_assoc_string(pval_res, "errorstring",
(char *) ccl_err_msg(error_code), 1);
add_assoc_long(pval_res, "errorpos", error_pos);
RETVAL_FALSE;
(char *) ccl_err_msg(error_code), 1);
add_assoc_long(pval_res, "errorpos", error_pos);
RETVAL_FALSE;
- }
- else
+ }
+ else
{
WRBUF wrbuf_pqf = wrbuf_alloc();
ccl_stop_words_t csw = ccl_stop_words_create();
{
WRBUF wrbuf_pqf = wrbuf_alloc();
ccl_stop_words_t csw = ccl_stop_words_create();
@@
-1946,7
+1949,7
@@
PHP_FUNCTION(yaz_ccl_parse)
add_assoc_zval(pval_res, "stopwords", zval_stopwords);
}
ccl_pquery(wrbuf_pqf, rpn);
add_assoc_zval(pval_res, "stopwords", zval_stopwords);
}
ccl_pquery(wrbuf_pqf, rpn);
- add_assoc_stringl(pval_res, "rpn",
+ add_assoc_stringl(pval_res, "rpn",
wrbuf_buf(wrbuf_pqf), wrbuf_len(wrbuf_pqf), 1);
wrbuf_destroy(wrbuf_pqf);
ccl_stop_words_destroy(csw);
wrbuf_buf(wrbuf_pqf), wrbuf_len(wrbuf_pqf), 1);
wrbuf_destroy(wrbuf_pqf);
ccl_stop_words_destroy(csw);
@@
-2027,7
+2030,7
@@
PHP_INI_BEGIN()
STD_PHP_INI_ENTRY("yaz.log_mask", NULL, PHP_INI_ALL, OnUpdateString, log_mask, zend_yaz_globals, yaz_globals)
PHP_INI_END()
/* }}} */
STD_PHP_INI_ENTRY("yaz.log_mask", NULL, PHP_INI_ALL, OnUpdateString, log_mask, zend_yaz_globals, yaz_globals)
PHP_INI_END()
/* }}} */
-
+
PHP_MINIT_FUNCTION(yaz)
{
int i;
PHP_MINIT_FUNCTION(yaz)
{
int i;
@@
-2040,7
+2043,7
@@
PHP_MINIT_FUNCTION(yaz)
ZEND_INIT_MODULE_GLOBALS(yaz, php_yaz_init_globals, NULL);
REGISTER_INI_ENTRIES();
ZEND_INIT_MODULE_GLOBALS(yaz, php_yaz_init_globals, NULL);
REGISTER_INI_ENTRIES();
-
+
REGISTER_LONG_CONSTANT("ZOOM_EVENT_NONE", ZOOM_EVENT_NONE,
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ZOOM_EVENT_CONNECT", ZOOM_EVENT_CONNECT,
REGISTER_LONG_CONSTANT("ZOOM_EVENT_NONE", ZOOM_EVENT_NONE,
CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ZOOM_EVENT_CONNECT", ZOOM_EVENT_CONNECT,
diff --git
a/php_yaz.h
b/php_yaz.h
index
1433e65
..
d45673a
100644
(file)
--- a/
php_yaz.h
+++ b/
php_yaz.h
@@
-63,7
+63,7
@@
ZEND_BEGIN_MODULE_GLOBALS(yaz)
char *log_file;
char *log_mask;
ZEND_END_MODULE_GLOBALS(yaz)
char *log_file;
char *log_mask;
ZEND_END_MODULE_GLOBALS(yaz)
-
+
#ifdef ZTS
#define YAZSG(v) TSRMG(yaz_globals_id, zend_yaz_globals *, v)
#else
#ifdef ZTS
#define YAZSG(v) TSRMG(yaz_globals_id, zend_yaz_globals *, v)
#else