- Z_SearchResponse *sr = z3950_gdu->u.z3950->u.searchResponse;
- if (sr)
- {
- // srw'fy number of records
- sru_pdu_res->u.response->numberOfRecords
- = (int *) odr_malloc(odr_en, sizeof(int *));
- *(sru_pdu_res->u.response->numberOfRecords) = *(sr->resultCount);
-
- // srw'fy nextRecordPosition
- //sru_pdu_res->u.response->nextRecordPosition
- // = (int *) odr_malloc(odr_en, sizeof(int *));
- //*(sru_pdu_res->u.response->nextRecordPosition) = 1;
-
- }
-
- return true;
+ // checking non surrogate diagnostics in Z3950 search response package
+ if (!z3950_to_srw_diagnostics_ok(odr_en, sru_pdu_res->u.response,
+ sr->records))
+ {
+ return false;