diff options
author | Thierry Thomas <thierry@FreeBSD.org> | 2007-07-29 19:43:33 +0000 |
---|---|---|
committer | Thierry Thomas <thierry@FreeBSD.org> | 2007-07-29 19:43:33 +0000 |
commit | 93b547e6969c76cfaea8e0bf83d4ef1ac0da9b04 (patch) | |
tree | 69582a24a6d8d671f79eb8336290d64c857f3302 /deskutils | |
parent | ca2e9e98c7b3fd496b4a226f6248061c6d2ad3fb (diff) | |
download | ports-93b547e6969c76cfaea8e0bf83d4ef1ac0da9b04.tar.gz ports-93b547e6969c76cfaea8e0bf83d4ef1ac0da9b04.zip |
Notes
Diffstat (limited to 'deskutils')
-rw-r--r-- | deskutils/pinot/Makefile | 18 | ||||
-rw-r--r-- | deskutils/pinot/distinfo | 6 | ||||
-rw-r--r-- | deskutils/pinot/files/patch-gsoap279e | 3486 | ||||
-rw-r--r-- | deskutils/pinot/pkg-plist | 1 |
4 files changed, 3498 insertions, 13 deletions
diff --git a/deskutils/pinot/Makefile b/deskutils/pinot/Makefile index 36ecde9921c3..e98a14ccc48d 100644 --- a/deskutils/pinot/Makefile +++ b/deskutils/pinot/Makefile @@ -5,8 +5,7 @@ # $FreeBSD$ PORTNAME= pinot -PORTVERSION= 0.73 -PORTREVISION= 4 +PORTVERSION= 0.75 CATEGORIES= deskutils MASTER_SITES= ${MASTER_SITE_BERLIOS} #MASTER_SITES= http://www.chez.com/colinf/pinot/ \ @@ -35,15 +34,11 @@ RUN_DEPENDS= update-mime-database:${PORTSDIR}/misc/shared-mime-info \ unzip:${PORTSDIR}/archivers/unzip \ unrtf:${PORTSDIR}/textproc/unrtf -.if !defined(WITHOUT_SOAP) -BUILD_DEPENDS+= ${LOCALBASE}/lib/libgsoap.a:${PORTSDIR}/devel/gsoap -CONFIGURE_ARGS+= --with-soap=yes -.endif - GNU_CONFIGURE= yes CONFIGURE_TARGET= --build=${ARCH}-portbld-freebsd${OSREL} CONFIGURE_ARGS= --with-http=curl -CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib" +CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib" \ + MKDIR_P="mkdir -p" USE_GETTEXT= yes USE_XLIB= yes @@ -51,6 +46,11 @@ USE_XLIB= yes USE_PYTHON= yes USE_LDCONFIG= ${PREFIX}/lib/pinot/filters +.if defined(WITH_SOAP) +BUILD_DEPENDS+= ${LOCALBASE}/lib/libgsoap.a:${PORTSDIR}/devel/gsoap +CONFIGURE_ARGS+= --enable-soap=yes +.endif + .if defined(WITH_DEBUG) CONFIGURE_ARGS+= --enable-debug=yes .endif @@ -64,7 +64,7 @@ PKGMESSAGE= ${WRKDIR}/pkg-message MAN1= pinot-dbus-daemon.1 pinot-index.1 pinot-search.1 pinot.1 -PORTDOCS= AUTHORS ChangeLog INSTALL NEWS README TODO +PORTDOCS= AUTHORS ChangeLog ChangeLog-dijon INSTALL NEWS README TODO LM2FIX= textcat_conf.txt textcat3_conf.txt SHR2FIX= Search/pinot-search.1 README diff --git a/deskutils/pinot/distinfo b/deskutils/pinot/distinfo index 66dd8a5805b3..d00cb20f2585 100644 --- a/deskutils/pinot/distinfo +++ b/deskutils/pinot/distinfo @@ -1,3 +1,3 @@ -MD5 (pinot-0.73.tar.gz) = 0289371844be997c82585b3039f4da05 -SHA256 (pinot-0.73.tar.gz) = 83c233e3289e210f211fa3d6e22a20c174875d502474d80c4442e5a46befdf9a -SIZE (pinot-0.73.tar.gz) = 844406 +MD5 (pinot-0.75.tar.gz) = 14f1f1312920c279ffe0d7945e0a64b8 +SHA256 (pinot-0.75.tar.gz) = 294b7bd63d5c577b6db70d00831fb0900483c34af6aa836267f44eba5808822e +SIZE (pinot-0.75.tar.gz) = 867311 diff --git a/deskutils/pinot/files/patch-gsoap279e b/deskutils/pinot/files/patch-gsoap279e new file mode 100644 index 000000000000..4c9067de8f7a --- /dev/null +++ b/deskutils/pinot/files/patch-gsoap279e @@ -0,0 +1,3486 @@ +diff -Naur ./Search/Google/GAPIC.cpp ./Search/Google/GAPIC.cpp +--- ./Search/Google/GAPIC.cpp 2006-11-22 21:09:11.000000000 +0800 ++++ ./Search/Google/GAPIC.cpp 2007-07-29 18:34:02.000000000 +0800 +@@ -1,13 +1,13 @@ + /* GAPIC.cpp +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ + + #include "GAPIH.h" + +-SOAP_SOURCE_STAMP("@(#) GAPIC.cpp ver 2.7.8c 2006-11-22 12:30:01 GMT") ++SOAP_SOURCE_STAMP("@(#) GAPIC.cpp ver 2.7.9e 2007-07-29 10:34:02 GMT") + + + #ifndef WITH_NOGLOBAL +@@ -39,21 +39,22 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap) + { + if (!soap->fault) +- { soap->fault = (struct SOAP_ENV__Fault*)soap_malloc(soap, sizeof(struct SOAP_ENV__Fault)); ++ { soap->fault = soap_new_SOAP_ENV__Fault(soap, -1); + soap_default_SOAP_ENV__Fault(soap, soap->fault); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Code) +- { soap->fault->SOAP_ENV__Code = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); ++ { soap->fault->SOAP_ENV__Code = soap_new_SOAP_ENV__Code(soap, -1); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason) +- { soap->fault->SOAP_ENV__Reason = (struct SOAP_ENV__Reason*)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason)); ++ { soap->fault->SOAP_ENV__Reason = soap_new_SOAP_ENV__Reason(soap, -1); + soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason); + } + } + + SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap) + { ++ soap_fault(soap); + if (soap->fault) + soap_serialize_SOAP_ENV__Fault(soap, soap->fault); + } +@@ -83,7 +84,7 @@ + soap_fault(soap); + if (soap->version == 2) + { if (!soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode) +- { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); ++ { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = soap_new_SOAP_ENV__Code(soap, -1); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode); + } + return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; +@@ -110,7 +111,7 @@ + return (const char**)&soap->fault->detail->__any; + } + if (!soap->fault->SOAP_ENV__Detail) +- { soap->fault->SOAP_ENV__Detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); ++ { soap->fault->SOAP_ENV__Detail = soap_new_SOAP_ENV__Detail(soap, -1); + soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail); + } + return (const char**)&soap->fault->SOAP_ENV__Detail->__any; +@@ -133,6 +134,10 @@ + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type) + { + if (soap_peek_element(soap)) +@@ -153,6 +158,8 @@ + return soap_in_unsignedInt(soap, NULL, NULL, "xsd:unsignedInt"); + case SOAP_TYPE_bool: + return soap_in_bool(soap, NULL, NULL, "xsd:boolean"); ++ case SOAP_TYPE_std__string: ++ return soap_in_std__string(soap, NULL, NULL, "xsd:string"); + case SOAP_TYPE_gapi1__DirectoryCategory: + return soap_in_gapi1__DirectoryCategory(soap, NULL, NULL, "gapi1:DirectoryCategory"); + case SOAP_TYPE_gapi1DirectoryCategoryArray: +@@ -163,8 +170,6 @@ + return soap_in_gapi1__ResultElement(soap, NULL, NULL, "gapi1:ResultElement"); + case SOAP_TYPE_gapi1__GoogleSearchResult: + return soap_in_gapi1__GoogleSearchResult(soap, NULL, NULL, "gapi1:GoogleSearchResult"); +- case SOAP_TYPE_std__string: +- return soap_in_std__string(soap, NULL, NULL, "xsd:string"); + case SOAP_TYPE_xsd__base64Binary: + return soap_in_xsd__base64Binary(soap, NULL, NULL, "xsd:base64Binary"); + case SOAP_TYPE_gapi1__doGoogleSearch: +@@ -228,6 +233,10 @@ + { *type = SOAP_TYPE_bool; + return soap_in_bool(soap, NULL, NULL, NULL); + } ++ if (!soap_match_tag(soap, t, "xsd:string")) ++ { *type = SOAP_TYPE_std__string; ++ return soap_in_std__string(soap, NULL, NULL, NULL); ++ } + if (!soap_match_tag(soap, t, "gapi1:DirectoryCategory")) + { *type = SOAP_TYPE_gapi1__DirectoryCategory; + return soap_in_gapi1__DirectoryCategory(soap, NULL, NULL, NULL); +@@ -248,10 +257,6 @@ + { *type = SOAP_TYPE_gapi1__GoogleSearchResult; + return soap_in_gapi1__GoogleSearchResult(soap, NULL, NULL, NULL); + } +- if (!soap_match_tag(soap, t, "xsd:string")) +- { *type = SOAP_TYPE_std__string; +- return soap_in_std__string(soap, NULL, NULL, NULL); +- } + if (!soap_match_tag(soap, t, "xsd:base64Binary")) + { *type = SOAP_TYPE_xsd__base64Binary; + return soap_in_xsd__base64Binary(soap, NULL, NULL, NULL); +@@ -287,11 +292,7 @@ + return s ? *s : NULL; + } + t = soap->tag; +- if (!soap_match_tag(soap, t, "SOAP-ENC:arrayType")) +- { *type = SOAP_TYPE__SOAP_ENC__arrayType; +- return soap_in__SOAP_ENC__arrayType(soap, NULL, NULL, NULL); +- } +- if (!soap_match_tag(soap, t, "QName")) ++ if (!soap_match_tag(soap, t, "xsd:QName")) + { char **s; + *type = SOAP_TYPE__QName; + s = soap_in__QName(soap, NULL, NULL, NULL); +@@ -302,6 +303,10 @@ + soap->error = SOAP_TAG_MISMATCH; + return NULL; + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap) +@@ -311,15 +316,17 @@ + if (soap->mustUnderstand && !soap->other) + return soap->error = SOAP_MUSTUNDERSTAND; + if (((soap->mode & SOAP_XML_STRICT) && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:")) +- { ++ { DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag)); + return soap->error = SOAP_TAG_MISMATCH; + } + if (!*soap->id || !soap_getelement(soap, &t)) + { soap->peeked = 0; ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unknown element '%s' (level=%u, %d)\n", soap->tag, soap->level, soap->body)); + if (soap->fignore) + soap->error = soap->fignore(soap, soap->tag); + else + soap->error = SOAP_OK; ++ DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag)); + if (!soap->error && soap->body) + { soap->level++; + while (!soap_ignore_element(soap)) +@@ -348,6 +355,10 @@ + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type) + { + switch (type) +@@ -364,6 +375,8 @@ + return soap_out_unsignedInt(soap, tag, id, (const unsigned int *)ptr, "xsd:unsignedInt"); + case SOAP_TYPE_bool: + return soap_out_bool(soap, tag, id, (const bool *)ptr, "xsd:boolean"); ++ case SOAP_TYPE_std__string: ++ return soap_out_std__string(soap, tag, id, (const std::string *)ptr, "xsd:string"); + case SOAP_TYPE_gapi1__DirectoryCategory: + return ((gapi1__DirectoryCategory *)ptr)->soap_out(soap, tag, id, "gapi1:DirectoryCategory"); + case SOAP_TYPE_gapi1DirectoryCategoryArray: +@@ -374,10 +387,6 @@ + return ((gapi1__ResultElement *)ptr)->soap_out(soap, tag, id, "gapi1:ResultElement"); + case SOAP_TYPE_gapi1__GoogleSearchResult: + return ((gapi1__GoogleSearchResult *)ptr)->soap_out(soap, tag, id, "gapi1:GoogleSearchResult"); +- case SOAP_TYPE__SOAP_ENC__arrayType: +- return soap_out__SOAP_ENC__arrayType(soap, "SOAP-ENC:arrayType", id, (const std::string *)ptr, NULL); +- case SOAP_TYPE_std__string: +- return soap_out_std__string(soap, tag, id, (const std::string *)ptr, "xsd:string"); + case SOAP_TYPE_xsd__base64Binary: + return ((xsd__base64Binary *)ptr)->soap_out(soap, tag, id, "xsd:base64Binary"); + case SOAP_TYPE_gapi1__doGoogleSearch: +@@ -409,20 +418,31 @@ + case SOAP_TYPE_PointerTounsignedByte: + return soap_out_PointerTounsignedByte(soap, tag, id, (unsigned char *const*)ptr, "xsd:unsignedByte"); + case SOAP_TYPE__QName: +- return soap_out_string(soap, "QName", id, (char**)&ptr, NULL); ++ return soap_out_string(soap, "xsd:QName", id, (char**)&ptr, NULL); + case SOAP_TYPE_string: + return soap_out_string(soap, tag, id, (char**)&ptr, "xsd:string"); + } + return SOAP_OK; + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type) + { + (void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ + switch (type) + { ++ case SOAP_TYPE_std__string: ++ soap_serialize_std__string(soap, (const std::string *)ptr); ++ break; + case SOAP_TYPE_gapi1__DirectoryCategory: + ((gapi1__DirectoryCategory *)ptr)->soap_serialize(soap); + break; +@@ -438,12 +458,6 @@ + case SOAP_TYPE_gapi1__GoogleSearchResult: + ((gapi1__GoogleSearchResult *)ptr)->soap_serialize(soap); + break; +- case SOAP_TYPE__SOAP_ENC__arrayType: +- soap_serialize__SOAP_ENC__arrayType(soap, (const std::string *)ptr); +- break; +- case SOAP_TYPE_std__string: +- soap_serialize_std__string(soap, (const std::string *)ptr); +- break; + case SOAP_TYPE_xsd__base64Binary: + ((xsd__base64Binary *)ptr)->soap_serialize(soap); + break; +@@ -497,6 +511,10 @@ + break; + } + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap *soap, int t, const char *type, const char *arrayType, size_t *n) +@@ -529,13 +547,31 @@ + return (void*)soap_instantiate_gapi1__doGoogleSearchResponse(soap, -1, type, arrayType, n); + case SOAP_TYPE_gapi1__doGoogleSearch: + return (void*)soap_instantiate_gapi1__doGoogleSearch(soap, -1, type, arrayType, n); +- case SOAP_TYPE__SOAP_ENC__arrayType: +- return (void*)soap_instantiate__SOAP_ENC__arrayType(soap, -1, type, arrayType, n); ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Header: ++ return (void*)soap_instantiate_SOAP_ENV__Header(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Code: ++ return (void*)soap_instantiate_SOAP_ENV__Code(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Detail: ++ return (void*)soap_instantiate_SOAP_ENV__Detail(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Reason: ++ return (void*)soap_instantiate_SOAP_ENV__Reason(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Fault: ++ return (void*)soap_instantiate_SOAP_ENV__Fault(soap, -1, type, arrayType, n); ++#endif + } + return NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_fdelete(struct soap_clist *p) ++SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist *p) + { switch (p->type) + { + case SOAP_TYPE_xsd__base64Binary: +@@ -646,13 +682,9 @@ + else + delete[] (struct SOAP_ENV__Fault*)p->ptr; + break; +- case SOAP_TYPE__SOAP_ENC__arrayType: +- if (p->size < 0) +- delete (std::string*)p->ptr; +- else +- delete[] (std::string*)p->ptr; +- break; ++ default: return SOAP_ERR; + } ++ return SOAP_OK; + } + + SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap *soap, const char *id, void *p, int t, size_t n, const char *type, const char *arrayType) +@@ -865,10 +897,7 @@ + }; + + SOAP_FMAC3S const char* SOAP_FMAC4S soap_bool2s(struct soap *soap, bool n) +-{ const char *s = soap_code_str(soap_codes_bool, (long)n); +- if (s) +- return s; +- return soap_long2s(soap, (long)n); ++{ return soap_code_str(soap_codes_bool, n!=0); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_out_bool(struct soap *soap, const char *tag, int id, const bool *a, const char *type) +@@ -917,26 +946,120 @@ + return NULL; + } + else +- { a = (bool *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_bool, 0, sizeof(bool), 0, NULL); ++ { a = (bool *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_bool, 0, sizeof(bool), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; + } + +-void gapi1__DirectoryCategory::soap_serialize(struct soap *soap) const ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap *soap, std::string *p) ++{ (void)soap; /* appease -Wall -Werror */ ++ p->erase(); ++} ++ ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap *soap, const std::string *p) ++{ (void)soap; (void)p; /* appease -Wall -Werror */ ++} ++ ++SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap *soap, const std::string *a, const char *tag, const char *type) + { +- (void)soap; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &((gapi1__DirectoryCategory*)this)->fullViewableName); +- soap_serialize_std__string(soap, &((gapi1__DirectoryCategory*)this)->specialEncoding); +- /* transient soap skipped */ ++ register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_std__string); ++ if (soap_out_std__string(soap, tag, id, a, type)) ++ return soap->error; ++ return soap_putindependent(soap); ++} ++SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap *soap, const char *tag, int id, const std::string *s, const char *type) ++{ ++ if ((soap->mode & SOAP_C_NILSTRING) && s->empty()) ++ return soap_element_null(soap, tag, id, type); ++ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, s, SOAP_TYPE_std__string), type) || soap_string_out(soap, s->c_str(), 0) || soap_element_end_out(soap, tag)) ++ return soap->error; ++ return SOAP_OK; ++} ++ ++SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap *soap, std::string *p, const char *tag, const char *type) ++{ ++ if ((p = soap_in_std__string(soap, tag, p, type))) ++ soap_getindependent(soap); ++ return p; ++} ++ ++SOAP_FMAC1 std::string * SOAP_FMAC2 soap_in_std__string(struct soap *soap, const char *tag, std::string *s, const char *type) ++{ ++ if (soap_element_begin_in(soap, tag, 1, type)) ++ return NULL; ++ if (!s) ++ s = soap_new_std__string(soap, -1); ++ if (soap->null) ++ if (s) ++ s->erase(); ++ if (soap->body && !*soap->href) ++ { char *t; ++ s = (std::string*)soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType); ++ if (s) ++ if ((t = soap_string_in(soap, 1, -1, -1))) ++ s->assign(t); ++ else ++ return NULL; ++ } ++ else ++ s = (std::string*)soap_id_forward(soap, soap->href, soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType), 0, SOAP_TYPE_std__string, 0, sizeof(std::string), 0, soap_copy_std__string); ++ if (soap->body && soap_element_end_in(soap, tag)) ++ return NULL; ++ return s; ++} ++ ++SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new_std__string(struct soap *soap, int n) ++{ return soap_instantiate_std__string(soap, n, NULL, NULL, NULL); ++} ++ ++SOAP_FMAC5 void SOAP_FMAC6 soap_delete_std__string(struct soap *soap, std::string *p) ++{ soap_delete(soap, p); ++} ++ ++SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate_std__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) ++{ ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); ++ struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__string, n, soap_fdelete); ++ if (!cp) ++ return NULL; ++ if (n < 0) ++ { cp->ptr = (void*)new std::string; ++ if (size) ++ *size = sizeof(std::string); ++ } ++ else ++ { cp->ptr = (void*)new std::string[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } ++ if (size) ++ *size = n * sizeof(std::string); ++ } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); ++ return (std::string*)cp->ptr; ++} ++SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) ++{ ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::string %p -> %p\n", q, p)); ++ *(std::string*)p = *(std::string*)q; + } + + void gapi1__DirectoryCategory::soap_default(struct soap *soap) + { + this->soap = soap; +- soap_default_std__string(soap, &((gapi1__DirectoryCategory*)this)->fullViewableName); +- soap_default_std__string(soap, &((gapi1__DirectoryCategory*)this)->specialEncoding); ++ soap_default_std__string(soap, &this->gapi1__DirectoryCategory::fullViewableName); ++ soap_default_std__string(soap, &this->gapi1__DirectoryCategory::specialEncoding); ++ /* transient soap skipped */ ++} ++ ++void gapi1__DirectoryCategory::soap_serialize(struct soap *soap) const ++{ ++ (void)soap; /* appease -Wall -Werror */ ++ soap_serialize_std__string(soap, &this->gapi1__DirectoryCategory::fullViewableName); ++ soap_serialize_std__string(soap, &this->gapi1__DirectoryCategory::specialEncoding); + /* transient soap skipped */ + } + +@@ -956,8 +1079,8 @@ + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__DirectoryCategory(struct soap *soap, const char *tag, int id, const gapi1__DirectoryCategory *a, const char *type) + { + soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_gapi1__DirectoryCategory), type); +- soap_out_std__string(soap, "fullViewableName", -1, &(((gapi1__DirectoryCategory*)a)->fullViewableName), ""); +- soap_out_std__string(soap, "specialEncoding", -1, &(((gapi1__DirectoryCategory*)a)->specialEncoding), ""); ++ soap_out_std__string(soap, "fullViewableName", -1, &(a->gapi1__DirectoryCategory::fullViewableName), ""); ++ soap_out_std__string(soap, "specialEncoding", -1, &(a->gapi1__DirectoryCategory::specialEncoding), ""); + /* transient soap skipped */ + soap_element_end_out(soap, tag); + return SOAP_OK; +@@ -1000,12 +1123,12 @@ + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_fullViewableName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "fullViewableName", &(((gapi1__DirectoryCategory*)a)->fullViewableName), "xsd:string")) ++ if (soap_in_std__string(soap, "fullViewableName", &(a->gapi1__DirectoryCategory::fullViewableName), "xsd:string")) + { soap_flag_fullViewableName1--; + continue; + } + if (soap_flag_specialEncoding1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "specialEncoding", &(((gapi1__DirectoryCategory*)a)->specialEncoding), "xsd:string")) ++ if (soap_in_std__string(soap, "specialEncoding", &(a->gapi1__DirectoryCategory::specialEncoding), "xsd:string")) + { soap_flag_specialEncoding1--; + continue; + } +@@ -1017,18 +1140,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fullViewableName1 > 0 || soap_flag_specialEncoding1 > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (gapi1__DirectoryCategory *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__DirectoryCategory, 0, sizeof(gapi1__DirectoryCategory), 0, soap_copy_gapi1__DirectoryCategory); ++ { a = (gapi1__DirectoryCategory *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__DirectoryCategory, 0, sizeof(gapi1__DirectoryCategory), 0, soap_copy_gapi1__DirectoryCategory); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fullViewableName1 > 0 || soap_flag_specialEncoding1 > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -1042,6 +1165,7 @@ + + SOAP_FMAC3 gapi1__DirectoryCategory * SOAP_FMAC4 soap_instantiate_gapi1__DirectoryCategory(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__DirectoryCategory(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__DirectoryCategory, n, soap_fdelete); + if (!cp) + return NULL; +@@ -1053,19 +1177,31 @@ + } + else + { cp->ptr = (void*)new gapi1__DirectoryCategory[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(gapi1__DirectoryCategory); + for (int i = 0; i < n; i++) + ((gapi1__DirectoryCategory*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (gapi1__DirectoryCategory*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__DirectoryCategory(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying gapi1__DirectoryCategory %p -> %p\n", q, p)); + *(gapi1__DirectoryCategory*)p = *(gapi1__DirectoryCategory*)q; + } + ++void gapi1DirectoryCategoryArray::soap_default(struct soap *soap) ++{ ++ this->soap = soap; ++ this->__size = 0; ++ this->__ptr = NULL; ++} ++ + void gapi1DirectoryCategoryArray::soap_serialize(struct soap *soap) const + { + if (this->__ptr && !soap_array_reference(soap, this, (struct soap_array*)&this->__ptr, 1, SOAP_TYPE_gapi1DirectoryCategoryArray)) +@@ -1075,13 +1211,6 @@ + } + } + +-void gapi1DirectoryCategoryArray::soap_default(struct soap *soap) +-{ +- this->soap = soap; +- this->__size = 0; +- this->__ptr = NULL; +-} +- + int gapi1DirectoryCategoryArray::soap_put(struct soap *soap, const char *tag, const char *type) const + { + register int id = soap_embed(soap, (void*)this, (struct soap_array*)&this->__ptr, 1, tag, SOAP_TYPE_gapi1DirectoryCategoryArray); +@@ -1189,7 +1318,7 @@ + return NULL; + } + else +- { a = (gapi1DirectoryCategoryArray *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1DirectoryCategoryArray, 0, sizeof(gapi1DirectoryCategoryArray), 0, soap_copy_gapi1DirectoryCategoryArray); ++ { a = (gapi1DirectoryCategoryArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1DirectoryCategoryArray, 0, sizeof(gapi1DirectoryCategoryArray), 0, soap_copy_gapi1DirectoryCategoryArray); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -1206,6 +1335,7 @@ + + SOAP_FMAC3 gapi1DirectoryCategoryArray * SOAP_FMAC4 soap_instantiate_gapi1DirectoryCategoryArray(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1DirectoryCategoryArray(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1DirectoryCategoryArray, n, soap_fdelete); + if (!cp) + return NULL; +@@ -1217,19 +1347,31 @@ + } + else + { cp->ptr = (void*)new gapi1DirectoryCategoryArray[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(gapi1DirectoryCategoryArray); + for (int i = 0; i < n; i++) + ((gapi1DirectoryCategoryArray*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (gapi1DirectoryCategoryArray*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1DirectoryCategoryArray(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying gapi1DirectoryCategoryArray %p -> %p\n", q, p)); + *(gapi1DirectoryCategoryArray*)p = *(gapi1DirectoryCategoryArray*)q; + } + ++void gapi1ResultElementArray::soap_default(struct soap *soap) ++{ ++ this->soap = soap; ++ this->__size = 0; ++ this->__ptr = NULL; ++} ++ + void gapi1ResultElementArray::soap_serialize(struct soap *soap) const + { + if (this->__ptr && !soap_array_reference(soap, this, (struct soap_array*)&this->__ptr, 1, SOAP_TYPE_gapi1ResultElementArray)) +@@ -1239,13 +1381,6 @@ + } + } + +-void gapi1ResultElementArray::soap_default(struct soap *soap) +-{ +- this->soap = soap; +- this->__size = 0; +- this->__ptr = NULL; +-} +- + int gapi1ResultElementArray::soap_put(struct soap *soap, const char *tag, const char *type) const + { + register int id = soap_embed(soap, (void*)this, (struct soap_array*)&this->__ptr, 1, tag, SOAP_TYPE_gapi1ResultElementArray); +@@ -1353,7 +1488,7 @@ + return NULL; + } + else +- { a = (gapi1ResultElementArray *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1ResultElementArray, 0, sizeof(gapi1ResultElementArray), 0, soap_copy_gapi1ResultElementArray); ++ { a = (gapi1ResultElementArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1ResultElementArray, 0, sizeof(gapi1ResultElementArray), 0, soap_copy_gapi1ResultElementArray); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -1370,6 +1505,7 @@ + + SOAP_FMAC3 gapi1ResultElementArray * SOAP_FMAC4 soap_instantiate_gapi1ResultElementArray(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1ResultElementArray(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1ResultElementArray, n, soap_fdelete); + if (!cp) + return NULL; +@@ -1381,45 +1517,50 @@ + } + else + { cp->ptr = (void*)new gapi1ResultElementArray[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(gapi1ResultElementArray); + for (int i = 0; i < n; i++) + ((gapi1ResultElementArray*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (gapi1ResultElementArray*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1ResultElementArray(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying gapi1ResultElementArray %p -> %p\n", q, p)); + *(gapi1ResultElementArray*)p = *(gapi1ResultElementArray*)q; + } + +-void gapi1__ResultElement::soap_serialize(struct soap *soap) const ++void gapi1__ResultElement::soap_default(struct soap *soap) + { +- (void)soap; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->summary); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->URL); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->snippet); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->title); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->cachedSize); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->hostName); +- soap_serialize_PointerTogapi1__DirectoryCategory(soap, &((gapi1__ResultElement*)this)->directoryCategory); +- soap_serialize_std__string(soap, &((gapi1__ResultElement*)this)->directoryTitle); ++ this->soap = soap; ++ soap_default_std__string(soap, &this->gapi1__ResultElement::summary); ++ soap_default_std__string(soap, &this->gapi1__ResultElement::URL); ++ soap_default_std__string(soap, &this->gapi1__ResultElement::snippet); ++ soap_default_std__string(soap, &this->gapi1__ResultElement::title); ++ soap_default_std__string(soap, &this->gapi1__ResultElement::cachedSize); ++ soap_default_bool(soap, &this->gapi1__ResultElement::relatedInformationPresent); ++ soap_default_std__string(soap, &this->gapi1__ResultElement::hostName); ++ this->gapi1__ResultElement::directoryCategory = NULL; ++ soap_default_std__string(soap, &this->gapi1__ResultElement::directoryTitle); + /* transient soap skipped */ + } + +-void gapi1__ResultElement::soap_default(struct soap *soap) ++void gapi1__ResultElement::soap_serialize(struct soap *soap) const + { +- this->soap = soap; +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->summary); +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->URL); +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->snippet); +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->title); +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->cachedSize); +- soap_default_bool(soap, &((gapi1__ResultElement*)this)->relatedInformationPresent); +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->hostName); +- ((gapi1__ResultElement*)this)->directoryCategory = NULL; +- soap_default_std__string(soap, &((gapi1__ResultElement*)this)->directoryTitle); ++ (void)soap; /* appease -Wall -Werror */ ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::summary); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::URL); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::snippet); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::title); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::cachedSize); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::hostName); ++ soap_serialize_PointerTogapi1__DirectoryCategory(soap, &this->gapi1__ResultElement::directoryCategory); ++ soap_serialize_std__string(soap, &this->gapi1__ResultElement::directoryTitle); + /* transient soap skipped */ + } + +@@ -1439,15 +1580,15 @@ + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__ResultElement(struct soap *soap, const char *tag, int id, const gapi1__ResultElement *a, const char *type) + { + soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_gapi1__ResultElement), type); +- soap_out_std__string(soap, "summary", -1, &(((gapi1__ResultElement*)a)->summary), ""); +- soap_out_std__string(soap, "URL", -1, &(((gapi1__ResultElement*)a)->URL), ""); +- soap_out_std__string(soap, "snippet", -1, &(((gapi1__ResultElement*)a)->snippet), ""); +- soap_out_std__string(soap, "title", -1, &(((gapi1__ResultElement*)a)->title), ""); +- soap_out_std__string(soap, "cachedSize", -1, &(((gapi1__ResultElement*)a)->cachedSize), ""); +- soap_out_bool(soap, "relatedInformationPresent", -1, &(((gapi1__ResultElement*)a)->relatedInformationPresent), ""); +- soap_out_std__string(soap, "hostName", -1, &(((gapi1__ResultElement*)a)->hostName), ""); +- soap_out_PointerTogapi1__DirectoryCategory(soap, "directoryCategory", -1, &(((gapi1__ResultElement*)a)->directoryCategory), ""); +- soap_out_std__string(soap, "directoryTitle", -1, &(((gapi1__ResultElement*)a)->directoryTitle), ""); ++ soap_out_std__string(soap, "summary", -1, &(a->gapi1__ResultElement::summary), ""); ++ soap_out_std__string(soap, "URL", -1, &(a->gapi1__ResultElement::URL), ""); ++ soap_out_std__string(soap, "snippet", -1, &(a->gapi1__ResultElement::snippet), ""); ++ soap_out_std__string(soap, "title", -1, &(a->gapi1__ResultElement::title), ""); ++ soap_out_std__string(soap, "cachedSize", -1, &(a->gapi1__ResultElement::cachedSize), ""); ++ soap_out_bool(soap, "relatedInformationPresent", -1, &(a->gapi1__ResultElement::relatedInformationPresent), ""); ++ soap_out_std__string(soap, "hostName", -1, &(a->gapi1__ResultElement::hostName), ""); ++ soap_out_PointerTogapi1__DirectoryCategory(soap, "directoryCategory", -1, &(a->gapi1__ResultElement::directoryCategory), ""); ++ soap_out_std__string(soap, "directoryTitle", -1, &(a->gapi1__ResultElement::directoryTitle), ""); + /* transient soap skipped */ + soap_element_end_out(soap, tag); + return SOAP_OK; +@@ -1490,47 +1631,47 @@ + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_summary1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "summary", &(((gapi1__ResultElement*)a)->summary), "xsd:string")) ++ if (soap_in_std__string(soap, "summary", &(a->gapi1__ResultElement::summary), "xsd:string")) + { soap_flag_summary1--; + continue; + } + if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "URL", &(((gapi1__ResultElement*)a)->URL), "xsd:string")) ++ if (soap_in_std__string(soap, "URL", &(a->gapi1__ResultElement::URL), "xsd:string")) + { soap_flag_URL1--; + continue; + } + if (soap_flag_snippet1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "snippet", &(((gapi1__ResultElement*)a)->snippet), "xsd:string")) ++ if (soap_in_std__string(soap, "snippet", &(a->gapi1__ResultElement::snippet), "xsd:string")) + { soap_flag_snippet1--; + continue; + } + if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "title", &(((gapi1__ResultElement*)a)->title), "xsd:string")) ++ if (soap_in_std__string(soap, "title", &(a->gapi1__ResultElement::title), "xsd:string")) + { soap_flag_title1--; + continue; + } + if (soap_flag_cachedSize1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "cachedSize", &(((gapi1__ResultElement*)a)->cachedSize), "xsd:string")) ++ if (soap_in_std__string(soap, "cachedSize", &(a->gapi1__ResultElement::cachedSize), "xsd:string")) + { soap_flag_cachedSize1--; + continue; + } + if (soap_flag_relatedInformationPresent1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_bool(soap, "relatedInformationPresent", &(((gapi1__ResultElement*)a)->relatedInformationPresent), "xsd:boolean")) ++ if (soap_in_bool(soap, "relatedInformationPresent", &(a->gapi1__ResultElement::relatedInformationPresent), "xsd:boolean")) + { soap_flag_relatedInformationPresent1--; + continue; + } + if (soap_flag_hostName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "hostName", &(((gapi1__ResultElement*)a)->hostName), "xsd:string")) ++ if (soap_in_std__string(soap, "hostName", &(a->gapi1__ResultElement::hostName), "xsd:string")) + { soap_flag_hostName1--; + continue; + } + if (soap_flag_directoryCategory1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_PointerTogapi1__DirectoryCategory(soap, "directoryCategory", &(((gapi1__ResultElement*)a)->directoryCategory), "gapi1:DirectoryCategory")) ++ if (soap_in_PointerTogapi1__DirectoryCategory(soap, "directoryCategory", &(a->gapi1__ResultElement::directoryCategory), "gapi1:DirectoryCategory")) + { soap_flag_directoryCategory1--; + continue; + } + if (soap_flag_directoryTitle1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "directoryTitle", &(((gapi1__ResultElement*)a)->directoryTitle), "xsd:string")) ++ if (soap_in_std__string(soap, "directoryTitle", &(a->gapi1__ResultElement::directoryTitle), "xsd:string")) + { soap_flag_directoryTitle1--; + continue; + } +@@ -1542,18 +1683,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_summary1 > 0 || soap_flag_URL1 > 0 || soap_flag_snippet1 > 0 || soap_flag_title1 > 0 || soap_flag_cachedSize1 > 0 || soap_flag_relatedInformationPresent1 > 0 || soap_flag_hostName1 > 0 || soap_flag_directoryCategory1 > 0 || soap_flag_directoryTitle1 > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (gapi1__ResultElement *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__ResultElement, 0, sizeof(gapi1__ResultElement), 0, soap_copy_gapi1__ResultElement); ++ { a = (gapi1__ResultElement *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__ResultElement, 0, sizeof(gapi1__ResultElement), 0, soap_copy_gapi1__ResultElement); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_summary1 > 0 || soap_flag_URL1 > 0 || soap_flag_snippet1 > 0 || soap_flag_title1 > 0 || soap_flag_cachedSize1 > 0 || soap_flag_relatedInformationPresent1 > 0 || soap_flag_hostName1 > 0 || soap_flag_directoryCategory1 > 0 || soap_flag_directoryTitle1 > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -1567,6 +1708,7 @@ + + SOAP_FMAC3 gapi1__ResultElement * SOAP_FMAC4 soap_instantiate_gapi1__ResultElement(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__ResultElement(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__ResultElement, n, soap_fdelete); + if (!cp) + return NULL; +@@ -1578,44 +1720,49 @@ + } + else + { cp->ptr = (void*)new gapi1__ResultElement[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(gapi1__ResultElement); + for (int i = 0; i < n; i++) + ((gapi1__ResultElement*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (gapi1__ResultElement*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__ResultElement(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying gapi1__ResultElement %p -> %p\n", q, p)); + *(gapi1__ResultElement*)p = *(gapi1__ResultElement*)q; + } + +-void gapi1__GoogleSearchResult::soap_serialize(struct soap *soap) const ++void gapi1__GoogleSearchResult::soap_default(struct soap *soap) + { +- (void)soap; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchComments); +- soap_serialize_PointerTogapi1ResultElementArray(soap, &((gapi1__GoogleSearchResult*)this)->resultElements); +- soap_serialize_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchQuery); +- soap_serialize_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchTips); +- soap_serialize_PointerTogapi1DirectoryCategoryArray(soap, &((gapi1__GoogleSearchResult*)this)->directoryCategories); ++ this->soap = soap; ++ soap_default_bool(soap, &this->gapi1__GoogleSearchResult::documentFiltering); ++ soap_default_std__string(soap, &this->gapi1__GoogleSearchResult::searchComments); ++ soap_default_int(soap, &this->gapi1__GoogleSearchResult::estimatedTotalResultsCount); ++ soap_default_bool(soap, &this->gapi1__GoogleSearchResult::estimateIsExact); ++ this->gapi1__GoogleSearchResult::resultElements = NULL; ++ soap_default_std__string(soap, &this->gapi1__GoogleSearchResult::searchQuery); ++ soap_default_int(soap, &this->gapi1__GoogleSearchResult::startIndex); ++ soap_default_int(soap, &this->gapi1__GoogleSearchResult::endIndex); ++ soap_default_std__string(soap, &this->gapi1__GoogleSearchResult::searchTips); ++ this->gapi1__GoogleSearchResult::directoryCategories = NULL; ++ soap_default_double(soap, &this->gapi1__GoogleSearchResult::searchTime); + /* transient soap skipped */ + } + +-void gapi1__GoogleSearchResult::soap_default(struct soap *soap) ++void gapi1__GoogleSearchResult::soap_serialize(struct soap *soap) const + { +- this->soap = soap; +- soap_default_bool(soap, &((gapi1__GoogleSearchResult*)this)->documentFiltering); +- soap_default_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchComments); +- soap_default_int(soap, &((gapi1__GoogleSearchResult*)this)->estimatedTotalResultsCount); +- soap_default_bool(soap, &((gapi1__GoogleSearchResult*)this)->estimateIsExact); +- ((gapi1__GoogleSearchResult*)this)->resultElements = NULL; +- soap_default_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchQuery); +- soap_default_int(soap, &((gapi1__GoogleSearchResult*)this)->startIndex); +- soap_default_int(soap, &((gapi1__GoogleSearchResult*)this)->endIndex); +- soap_default_std__string(soap, &((gapi1__GoogleSearchResult*)this)->searchTips); +- ((gapi1__GoogleSearchResult*)this)->directoryCategories = NULL; +- soap_default_double(soap, &((gapi1__GoogleSearchResult*)this)->searchTime); ++ (void)soap; /* appease -Wall -Werror */ ++ soap_serialize_std__string(soap, &this->gapi1__GoogleSearchResult::searchComments); ++ soap_serialize_PointerTogapi1ResultElementArray(soap, &this->gapi1__GoogleSearchResult::resultElements); ++ soap_serialize_std__string(soap, &this->gapi1__GoogleSearchResult::searchQuery); ++ soap_serialize_std__string(soap, &this->gapi1__GoogleSearchResult::searchTips); ++ soap_serialize_PointerTogapi1DirectoryCategoryArray(soap, &this->gapi1__GoogleSearchResult::directoryCategories); + /* transient soap skipped */ + } + +@@ -1635,17 +1782,17 @@ + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__GoogleSearchResult(struct soap *soap, const char *tag, int id, const gapi1__GoogleSearchResult *a, const char *type) + { + soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_gapi1__GoogleSearchResult), type); +- soap_out_bool(soap, "documentFiltering", -1, &(((gapi1__GoogleSearchResult*)a)->documentFiltering), ""); +- soap_out_std__string(soap, "searchComments", -1, &(((gapi1__GoogleSearchResult*)a)->searchComments), ""); +- soap_out_int(soap, "estimatedTotalResultsCount", -1, &(((gapi1__GoogleSearchResult*)a)->estimatedTotalResultsCount), ""); +- soap_out_bool(soap, "estimateIsExact", -1, &(((gapi1__GoogleSearchResult*)a)->estimateIsExact), ""); +- soap_out_PointerTogapi1ResultElementArray(soap, "resultElements", -1, &(((gapi1__GoogleSearchResult*)a)->resultElements), ""); +- soap_out_std__string(soap, "searchQuery", -1, &(((gapi1__GoogleSearchResult*)a)->searchQuery), ""); +- soap_out_int(soap, "startIndex", -1, &(((gapi1__GoogleSearchResult*)a)->startIndex), ""); +- soap_out_int(soap, "endIndex", -1, &(((gapi1__GoogleSearchResult*)a)->endIndex), ""); +- soap_out_std__string(soap, "searchTips", -1, &(((gapi1__GoogleSearchResult*)a)->searchTips), ""); +- soap_out_PointerTogapi1DirectoryCategoryArray(soap, "directoryCategories", -1, &(((gapi1__GoogleSearchResult*)a)->directoryCategories), ""); +- soap_out_double(soap, "searchTime", -1, &(((gapi1__GoogleSearchResult*)a)->searchTime), ""); ++ soap_out_bool(soap, "documentFiltering", -1, &(a->gapi1__GoogleSearchResult::documentFiltering), ""); ++ soap_out_std__string(soap, "searchComments", -1, &(a->gapi1__GoogleSearchResult::searchComments), ""); ++ soap_out_int(soap, "estimatedTotalResultsCount", -1, &(a->gapi1__GoogleSearchResult::estimatedTotalResultsCount), ""); ++ soap_out_bool(soap, "estimateIsExact", -1, &(a->gapi1__GoogleSearchResult::estimateIsExact), ""); ++ soap_out_PointerTogapi1ResultElementArray(soap, "resultElements", -1, &(a->gapi1__GoogleSearchResult::resultElements), ""); ++ soap_out_std__string(soap, "searchQuery", -1, &(a->gapi1__GoogleSearchResult::searchQuery), ""); ++ soap_out_int(soap, "startIndex", -1, &(a->gapi1__GoogleSearchResult::startIndex), ""); ++ soap_out_int(soap, "endIndex", -1, &(a->gapi1__GoogleSearchResult::endIndex), ""); ++ soap_out_std__string(soap, "searchTips", -1, &(a->gapi1__GoogleSearchResult::searchTips), ""); ++ soap_out_PointerTogapi1DirectoryCategoryArray(soap, "directoryCategories", -1, &(a->gapi1__GoogleSearchResult::directoryCategories), ""); ++ soap_out_double(soap, "searchTime", -1, &(a->gapi1__GoogleSearchResult::searchTime), ""); + /* transient soap skipped */ + soap_element_end_out(soap, tag); + return SOAP_OK; +@@ -1688,57 +1835,57 @@ + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_documentFiltering1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_bool(soap, "documentFiltering", &(((gapi1__GoogleSearchResult*)a)->documentFiltering), "xsd:boolean")) ++ if (soap_in_bool(soap, "documentFiltering", &(a->gapi1__GoogleSearchResult::documentFiltering), "xsd:boolean")) + { soap_flag_documentFiltering1--; + continue; + } + if (soap_flag_searchComments1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "searchComments", &(((gapi1__GoogleSearchResult*)a)->searchComments), "xsd:string")) ++ if (soap_in_std__string(soap, "searchComments", &(a->gapi1__GoogleSearchResult::searchComments), "xsd:string")) + { soap_flag_searchComments1--; + continue; + } + if (soap_flag_estimatedTotalResultsCount1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_int(soap, "estimatedTotalResultsCount", &(((gapi1__GoogleSearchResult*)a)->estimatedTotalResultsCount), "xsd:int")) ++ if (soap_in_int(soap, "estimatedTotalResultsCount", &(a->gapi1__GoogleSearchResult::estimatedTotalResultsCount), "xsd:int")) + { soap_flag_estimatedTotalResultsCount1--; + continue; + } + if (soap_flag_estimateIsExact1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_bool(soap, "estimateIsExact", &(((gapi1__GoogleSearchResult*)a)->estimateIsExact), "xsd:boolean")) ++ if (soap_in_bool(soap, "estimateIsExact", &(a->gapi1__GoogleSearchResult::estimateIsExact), "xsd:boolean")) + { soap_flag_estimateIsExact1--; + continue; + } + if (soap_flag_resultElements1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_PointerTogapi1ResultElementArray(soap, "resultElements", &(((gapi1__GoogleSearchResult*)a)->resultElements), "gapi1:ResultElement")) ++ if (soap_in_PointerTogapi1ResultElementArray(soap, "resultElements", &(a->gapi1__GoogleSearchResult::resultElements), "gapi1:ResultElement")) + { soap_flag_resultElements1--; + continue; + } + if (soap_flag_searchQuery1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "searchQuery", &(((gapi1__GoogleSearchResult*)a)->searchQuery), "xsd:string")) ++ if (soap_in_std__string(soap, "searchQuery", &(a->gapi1__GoogleSearchResult::searchQuery), "xsd:string")) + { soap_flag_searchQuery1--; + continue; + } + if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_int(soap, "startIndex", &(((gapi1__GoogleSearchResult*)a)->startIndex), "xsd:int")) ++ if (soap_in_int(soap, "startIndex", &(a->gapi1__GoogleSearchResult::startIndex), "xsd:int")) + { soap_flag_startIndex1--; + continue; + } + if (soap_flag_endIndex1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_int(soap, "endIndex", &(((gapi1__GoogleSearchResult*)a)->endIndex), "xsd:int")) ++ if (soap_in_int(soap, "endIndex", &(a->gapi1__GoogleSearchResult::endIndex), "xsd:int")) + { soap_flag_endIndex1--; + continue; + } + if (soap_flag_searchTips1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) +- if (soap_in_std__string(soap, "searchTips", &(((gapi1__GoogleSearchResult*)a)->searchTips), "xsd:string")) ++ if (soap_in_std__string(soap, "searchTips", &(a->gapi1__GoogleSearchResult::searchTips), "xsd:string")) + { soap_flag_searchTips1--; + continue; + } + if (soap_flag_directoryCategories1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_PointerTogapi1DirectoryCategoryArray(soap, "directoryCategories", &(((gapi1__GoogleSearchResult*)a)->directoryCategories), "gapi1:DirectoryCategory")) ++ if (soap_in_PointerTogapi1DirectoryCategoryArray(soap, "directoryCategories", &(a->gapi1__GoogleSearchResult::directoryCategories), "gapi1:DirectoryCategory")) + { soap_flag_directoryCategories1--; + continue; + } + if (soap_flag_searchTime1 && soap->error == SOAP_TAG_MISMATCH) +- if (soap_in_double(soap, "searchTime", &(((gapi1__GoogleSearchResult*)a)->searchTime), "xsd:double")) ++ if (soap_in_double(soap, "searchTime", &(a->gapi1__GoogleSearchResult::searchTime), "xsd:double")) + { soap_flag_searchTime1--; + continue; + } +@@ -1750,18 +1897,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_documentFiltering1 > 0 || soap_flag_searchComments1 > 0 || soap_flag_estimatedTotalResultsCount1 > 0 || soap_flag_estimateIsExact1 > 0 || soap_flag_resultElements1 > 0 || soap_flag_searchQuery1 > 0 || soap_flag_startIndex1 > 0 || soap_flag_endIndex1 > 0 || soap_flag_searchTips1 > 0 || soap_flag_directoryCategories1 > 0 || soap_flag_searchTime1 > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (gapi1__GoogleSearchResult *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__GoogleSearchResult, 0, sizeof(gapi1__GoogleSearchResult), 0, soap_copy_gapi1__GoogleSearchResult); ++ { a = (gapi1__GoogleSearchResult *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__GoogleSearchResult, 0, sizeof(gapi1__GoogleSearchResult), 0, soap_copy_gapi1__GoogleSearchResult); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_documentFiltering1 > 0 || soap_flag_searchComments1 > 0 || soap_flag_estimatedTotalResultsCount1 > 0 || soap_flag_estimateIsExact1 > 0 || soap_flag_resultElements1 > 0 || soap_flag_searchQuery1 > 0 || soap_flag_startIndex1 > 0 || soap_flag_endIndex1 > 0 || soap_flag_searchTips1 > 0 || soap_flag_directoryCategories1 > 0 || soap_flag_searchTime1 > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -1775,6 +1922,7 @@ + + SOAP_FMAC3 gapi1__GoogleSearchResult * SOAP_FMAC4 soap_instantiate_gapi1__GoogleSearchResult(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__GoogleSearchResult(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__GoogleSearchResult, n, soap_fdelete); + if (!cp) + return NULL; +@@ -1786,226 +1934,60 @@ + } + else + { cp->ptr = (void*)new gapi1__GoogleSearchResult[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(gapi1__GoogleSearchResult); + for (int i = 0; i < n; i++) + ((gapi1__GoogleSearchResult*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (gapi1__GoogleSearchResult*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__GoogleSearchResult(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying gapi1__GoogleSearchResult %p -> %p\n", q, p)); + *(gapi1__GoogleSearchResult*)p = *(gapi1__GoogleSearchResult*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__SOAP_ENC__arrayType(struct soap *soap, std::string const*a) +-{ soap_serialize_std__string(soap, a); ++void xsd__base64Binary::soap_default(struct soap *soap) ++{ ++ this->soap = soap; ++ this->__size = 0; ++ this->__ptr = NULL; ++ this->id = NULL; ++ this->type = NULL; ++ this->options = NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default__SOAP_ENC__arrayType(struct soap *soap, std::string *a) +-{ soap_default_std__string(soap, a); ++void xsd__base64Binary::soap_serialize(struct soap *soap) const ++{ ++ if (this->__ptr && !soap_array_reference(soap, this, (struct soap_array*)&this->__ptr, 1, SOAP_TYPE_xsd__base64Binary)) ++ if (this->id || this->type) ++ soap->mode |= SOAP_ENC_DIME; + } + +-SOAP_FMAC3 int SOAP_FMAC4 soap_put__SOAP_ENC__arrayType(struct soap *soap, const std::string *a, const char *tag, const char *type) ++int xsd__base64Binary::soap_put(struct soap *soap, const char *tag, const char *type) const + { +- register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__SOAP_ENC__arrayType); +- if (soap_out__SOAP_ENC__arrayType(soap, tag, id, a, type)) ++ register int id = soap_embed(soap, (void*)this, (struct soap_array*)&this->__ptr, 1, tag, SOAP_TYPE_xsd__base64Binary); ++ if (this->soap_out(soap, tag, id, type)) + return soap->error; + return soap_putindependent(soap); + } +-SOAP_FMAC3 int SOAP_FMAC4 soap_out__SOAP_ENC__arrayType(struct soap *soap, const char *tag, int id, const std::string *s, const char *type) +-{ +- if ((soap->mode & SOAP_C_NILSTRING) && s->empty()) +- return soap_element_null(soap, tag, id, type); +- if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, s, SOAP_TYPE__SOAP_ENC__arrayType), type) || soap_string_out(soap, s->c_str(), 0) || soap_element_end_out(soap, tag)) +- return soap->error; +- return SOAP_OK; +-} + +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get__SOAP_ENC__arrayType(struct soap *soap, std::string *p, const char *tag, const char *type) +-{ +- if ((p = soap_in__SOAP_ENC__arrayType(soap, tag, p, type))) +- soap_getindependent(soap); +- return p; ++int xsd__base64Binary::soap_out(struct soap *soap, const char *tag, int id, const char *type) const ++{ return soap_out_xsd__base64Binary(soap, tag, id, this, type); + } + +-SOAP_FMAC1 std::string * SOAP_FMAC2 soap_in__SOAP_ENC__arrayType(struct soap *soap, const char *tag, std::string *s, const char *type) +-{ +- if (soap_element_begin_in(soap, tag, 1, type)) +- return NULL; +- if (!s) +- s = soap_new_std__string(soap, -1); +- if (soap->null) +- if (s) +- s->erase(); +- if (soap->body && !*soap->href) +- { char *t; +- s = (std::string*)soap_class_id_enter(soap, soap->id, s, SOAP_TYPE__SOAP_ENC__arrayType, sizeof(std::string), soap->type, soap->arrayType); +- if (s) +- if ((t = soap_string_in(soap, 1, -1, -1))) +- s->assign(t); +- else +- return NULL; +- } +- else +- s = (std::string*)soap_id_forward(soap, soap->href, soap_class_id_enter(soap, soap->id, s, SOAP_TYPE__SOAP_ENC__arrayType, sizeof(std::string), soap->type, soap->arrayType), 0, SOAP_TYPE__SOAP_ENC__arrayType, 0, sizeof(std::string), 0, soap_copy__SOAP_ENC__arrayType); +- if (soap->body && soap_element_end_in(soap, tag)) +- return NULL; +- return s; +-} +- +-SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new__SOAP_ENC__arrayType(struct soap *soap, int n) +-{ return soap_instantiate__SOAP_ENC__arrayType(soap, n, NULL, NULL, NULL); +-} +- +-SOAP_FMAC5 void SOAP_FMAC6 soap_delete__SOAP_ENC__arrayType(struct soap *soap, std::string *p) +-{ soap_delete(soap, p); +-} +- +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate__SOAP_ENC__arrayType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) +-{ +- struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE__SOAP_ENC__arrayType, n, soap_fdelete); +- if (!cp) +- return NULL; +- if (n < 0) +- { cp->ptr = (void*)new std::string; +- if (size) +- *size = sizeof(std::string); +- } +- else +- { cp->ptr = (void*)new std::string[n]; +- if (size) +- *size = n * sizeof(std::string); +- } +- return (std::string*)cp->ptr; +-} +- +-SOAP_FMAC3 void SOAP_FMAC4 soap_copy__SOAP_ENC__arrayType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) +-{ +- *(std::string*)p = *(std::string*)q; +-} +- +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap *soap, const std::string *p) +-{ (void)soap; (void)p; /* appease -Wall -Werror */ +-} +- +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap *soap, std::string *p) +-{ (void)soap; /* appease -Wall -Werror */ +- p->erase(); +-} +- +-SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap *soap, const std::string *a, const char *tag, const char *type) +-{ +- register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_std__string); +- if (soap_out_std__string(soap, tag, id, a, type)) +- return soap->error; +- return soap_putindependent(soap); +-} +-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap *soap, const char *tag, int id, const std::string *s, const char *type) +-{ +- if ((soap->mode & SOAP_C_NILSTRING) && s->empty()) +- return soap_element_null(soap, tag, id, type); +- if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, s, SOAP_TYPE_std__string), type) || soap_string_out(soap, s->c_str(), 0) || soap_element_end_out(soap, tag)) +- return soap->error; +- return SOAP_OK; +-} +- +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap *soap, std::string *p, const char *tag, const char *type) +-{ +- if ((p = soap_in_std__string(soap, tag, p, type))) +- soap_getindependent(soap); +- return p; +-} +- +-SOAP_FMAC1 std::string * SOAP_FMAC2 soap_in_std__string(struct soap *soap, const char *tag, std::string *s, const char *type) +-{ +- if (soap_element_begin_in(soap, tag, 1, type)) +- return NULL; +- if (!s) +- s = soap_new_std__string(soap, -1); +- if (soap->null) +- if (s) +- s->erase(); +- if (soap->body && !*soap->href) +- { char *t; +- s = (std::string*)soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType); +- if (s) +- if ((t = soap_string_in(soap, 1, -1, -1))) +- s->assign(t); +- else +- return NULL; +- } +- else +- s = (std::string*)soap_id_forward(soap, soap->href, soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType), 0, SOAP_TYPE_std__string, 0, sizeof(std::string), 0, soap_copy_std__string); +- if (soap->body && soap_element_end_in(soap, tag)) +- return NULL; +- return s; +-} +- +-SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new_std__string(struct soap *soap, int n) +-{ return soap_instantiate_std__string(soap, n, NULL, NULL, NULL); +-} +- +-SOAP_FMAC5 void SOAP_FMAC6 soap_delete_std__string(struct soap *soap, std::string *p) +-{ soap_delete(soap, p); +-} +- +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate_std__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) +-{ +- struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__string, n, soap_fdelete); +- if (!cp) +- return NULL; +- if (n < 0) +- { cp->ptr = (void*)new std::string; +- if (size) +- *size = sizeof(std::string); +- } +- else +- { cp->ptr = (void*)new std::string[n]; +- if (size) +- *size = n * sizeof(std::string); +- } +- return (std::string*)cp->ptr; +-} +- +-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) +-{ +- *(std::string*)p = *(std::string*)q; +-} +- +-void xsd__base64Binary::soap_serialize(struct soap *soap) const +-{ +- if (this->__ptr && !soap_array_reference(soap, this, (struct soap_array*)&this->__ptr, 1, SOAP_TYPE_xsd__base64Binary)) +- if (this->id || this->type) +- soap->mode |= SOAP_ENC_DIME; +-} +- +-void xsd__base64Binary::soap_default(struct soap *soap) +-{ +- this->soap = soap; +- this->__size = 0; +- this->__ptr = NULL; +- this->id = NULL; +- this->type = NULL; +- this->options = NULL; +-} +- +-int xsd__base64Binary::soap_put(struct soap *soap, const char *tag, const char *type) const +-{ +- register int id = soap_embed(soap, (void*)this, (struct soap_array*)&this->__ptr, 1, tag, SOAP_TYPE_xsd__base64Binary); +- if (this->soap_out(soap, tag, id, type)) +- return soap->error; +- return soap_putindependent(soap); +-} +- +-int xsd__base64Binary::soap_out(struct soap *soap, const char *tag, int id, const char *type) const +-{ return soap_out_xsd__base64Binary(soap, tag, id, this, type); +-} +- +-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__base64Binary(struct soap *soap, const char *tag, int id, const xsd__base64Binary *a, const char *type) ++SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__base64Binary(struct soap *soap, const char *tag, int id, const xsd__base64Binary *a, const char *type) + { ++#ifndef WITH_LEANER + id = soap_attachment(soap, tag, id, a, (struct soap_array*)&a->__ptr, a->id, a->type, a->options, 1, type, SOAP_TYPE_xsd__base64Binary); ++#else ++ id = soap_element_id(soap, tag, id, a, (struct soap_array*)&a->__ptr, 1, type, SOAP_TYPE_xsd__base64Binary); ++#endif + if (id < 0) + return soap->error; + soap_element_begin_out(soap, tag, id, type); +@@ -2046,18 +2028,23 @@ + if (soap->body && !*soap->href) + { + a->__ptr = soap_getbase64(soap, &a->__size, 0); ++#ifndef WITH_LEANER + if (soap_xop_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) + return NULL; ++#endif + if ((!a->__ptr && soap->error) || soap_element_end_in(soap, tag)) + return NULL; + } + else +- { if (*soap->href != '#') ++ { ++#ifndef WITH_LEANER ++ if (*soap->href != '#') + { if (soap_dime_forward(soap, &a->__ptr, &a->__size, &a->id, &a->type, &a->options)) + return NULL; + } + else +- a = (xsd__base64Binary *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_xsd__base64Binary, 0, sizeof(xsd__base64Binary), 0, soap_copy_xsd__base64Binary); ++#endif ++ a = (xsd__base64Binary *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_xsd__base64Binary, 0, sizeof(xsd__base64Binary), 0, soap_copy_xsd__base64Binary); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2074,6 +2061,7 @@ + + SOAP_FMAC3 xsd__base64Binary * SOAP_FMAC4 soap_instantiate_xsd__base64Binary(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__base64Binary(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__base64Binary, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2085,35 +2073,26 @@ + } + else + { cp->ptr = (void*)new xsd__base64Binary[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(xsd__base64Binary); + for (int i = 0; i < n; i++) + ((xsd__base64Binary*)cp->ptr)[i].soap = soap; + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (xsd__base64Binary*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__base64Binary(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__base64Binary %p -> %p\n", q, p)); + *(xsd__base64Binary*)p = *(xsd__base64Binary*)q; + } + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) +-{ +- (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize__QName(soap, &a->faultcode); +- soap_serialize_string(soap, &a->faultstring); +- soap_serialize_string(soap, &a->faultactor); +- soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); +- soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); +- soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); +- soap_serialize_string(soap, &a->SOAP_ENV__Node); +- soap_serialize_string(soap, &a->SOAP_ENV__Role); +- soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); +-} +- + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +@@ -2128,6 +2107,20 @@ + a->SOAP_ENV__Detail = NULL; + } + ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) ++{ ++ (void)soap; (void)a; /* appease -Wall -Werror */ ++ soap_serialize__QName(soap, &a->faultcode); ++ soap_serialize_string(soap, &a->faultstring); ++ soap_serialize_string(soap, &a->faultactor); ++ soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); ++ soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); ++ soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); ++ soap_serialize_string(soap, &a->SOAP_ENV__Node); ++ soap_serialize_string(soap, &a->SOAP_ENV__Role); ++ soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); ++} ++ + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type) + { + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault); +@@ -2229,7 +2222,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); ++ { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2246,6 +2239,7 @@ + + SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_instantiate_SOAP_ENV__Fault(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Fault(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Fault, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2256,14 +2250,19 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Fault[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Fault); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Fault*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Fault(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Fault %p -> %p\n", q, p)); + *(struct SOAP_ENV__Fault*)p = *(struct SOAP_ENV__Fault*)q; + } + +@@ -2271,16 +2270,16 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_string(soap, &a->SOAP_ENV__Text); ++ soap_default_string(soap, &a->SOAP_ENV__Text); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default_string(soap, &a->SOAP_ENV__Text); ++ soap_serialize_string(soap, &a->SOAP_ENV__Text); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type) +@@ -2335,7 +2334,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); ++ { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2352,6 +2351,7 @@ + + SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_instantiate_SOAP_ENV__Reason(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Reason(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Reason, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2362,14 +2362,19 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Reason[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Reason); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Reason*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Reason(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Reason %p -> %p\n", q, p)); + *(struct SOAP_ENV__Reason*)p = *(struct SOAP_ENV__Reason*)q; + } + +@@ -2377,12 +2382,6 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) +-{ +- (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_markelement(soap, a->fault, a->__type); +-} +- + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +@@ -2391,6 +2390,12 @@ + a->__any = NULL; + } + ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) ++{ ++ (void)soap; (void)a; /* appease -Wall -Werror */ ++ soap_markelement(soap, a->fault, a->__type); ++} ++ + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type) + { + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail); +@@ -2449,7 +2454,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); ++ { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2466,6 +2471,7 @@ + + SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_instantiate_SOAP_ENV__Detail(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Detail(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Detail, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2476,14 +2482,19 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Detail[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Detail); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Detail*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Detail(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Detail %p -> %p\n", q, p)); + *(struct SOAP_ENV__Detail*)p = *(struct SOAP_ENV__Detail*)q; + } + +@@ -2491,18 +2502,18 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize__QName(soap, &a->SOAP_ENV__Value); +- soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); ++ soap_default__QName(soap, &a->SOAP_ENV__Value); ++ a->SOAP_ENV__Subcode = NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default__QName(soap, &a->SOAP_ENV__Value); +- a->SOAP_ENV__Subcode = NULL; ++ soap_serialize__QName(soap, &a->SOAP_ENV__Value); ++ soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type) +@@ -2564,7 +2575,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); ++ { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2581,6 +2592,7 @@ + + SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_instantiate_SOAP_ENV__Code(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Code(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Code, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2591,14 +2603,19 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Code[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Code); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Code*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Code(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Code %p -> %p\n", q, p)); + *(struct SOAP_ENV__Code*)p = *(struct SOAP_ENV__Code*)q; + } + +@@ -2606,13 +2623,13 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ + /* transient dummy skipped */ + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ + /* transient dummy skipped */ +@@ -2665,7 +2682,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); ++ { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2682,6 +2699,7 @@ + + SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_instantiate_SOAP_ENV__Header(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Header(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Header, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2692,30 +2710,24 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Header[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Header); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Header*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Header(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Header %p -> %p\n", q, p)); + *(struct SOAP_ENV__Header*)p = *(struct SOAP_ENV__Header*)q; + } + + #endif + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearch(struct soap *soap, const struct gapi1__doGoogleSearch *a) +-{ +- (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &a->key); +- soap_serialize_std__string(soap, &a->q); +- soap_serialize_std__string(soap, &a->restrict_); +- soap_serialize_std__string(soap, &a->lr); +- soap_serialize_std__string(soap, &a->ie); +- soap_serialize_std__string(soap, &a->oe); +-} +- + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGoogleSearch(struct soap *soap, struct gapi1__doGoogleSearch *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +@@ -2731,6 +2743,17 @@ + soap_default_std__string(soap, &a->oe); + } + ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearch(struct soap *soap, const struct gapi1__doGoogleSearch *a) ++{ ++ (void)soap; (void)a; /* appease -Wall -Werror */ ++ soap_serialize_std__string(soap, &a->key); ++ soap_serialize_std__string(soap, &a->q); ++ soap_serialize_std__string(soap, &a->restrict_); ++ soap_serialize_std__string(soap, &a->lr); ++ soap_serialize_std__string(soap, &a->ie); ++ soap_serialize_std__string(soap, &a->oe); ++} ++ + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGoogleSearch(struct soap *soap, const struct gapi1__doGoogleSearch *a, const char *tag, const char *type) + { + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_gapi1__doGoogleSearch); +@@ -2742,16 +2765,16 @@ + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doGoogleSearch(struct soap *soap, const char *tag, int id, const struct gapi1__doGoogleSearch *a, const char *type) + { + soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_gapi1__doGoogleSearch), type); +- soap_out_std__string(soap, "key", -1, &a->key, "xsd:string"); +- soap_out_std__string(soap, "q", -1, &a->q, "xsd:string"); +- soap_out_int(soap, "start", -1, &a->start, "xsd:int"); +- soap_out_int(soap, "maxResults", -1, &a->maxResults, "xsd:int"); +- soap_out_bool(soap, "filter", -1, &a->filter, "xsd:boolean"); +- soap_out_std__string(soap, "restrict", -1, &a->restrict_, "xsd:string"); +- soap_out_bool(soap, "safeSearch", -1, &a->safeSearch, "xsd:boolean"); +- soap_out_std__string(soap, "lr", -1, &a->lr, "xsd:string"); +- soap_out_std__string(soap, "ie", -1, &a->ie, "xsd:string"); +- soap_out_std__string(soap, "oe", -1, &a->oe, "xsd:string"); ++ soap_out_std__string(soap, "key", -1, &a->key, ""); ++ soap_out_std__string(soap, "q", -1, &a->q, ""); ++ soap_out_int(soap, "start", -1, &a->start, ""); ++ soap_out_int(soap, "maxResults", -1, &a->maxResults, ""); ++ soap_out_bool(soap, "filter", -1, &a->filter, ""); ++ soap_out_std__string(soap, "restrict", -1, &a->restrict_, ""); ++ soap_out_bool(soap, "safeSearch", -1, &a->safeSearch, ""); ++ soap_out_std__string(soap, "lr", -1, &a->lr, ""); ++ soap_out_std__string(soap, "ie", -1, &a->ie, ""); ++ soap_out_std__string(soap, "oe", -1, &a->oe, ""); + soap_element_end_out(soap, tag); + return SOAP_OK; + } +@@ -2833,18 +2856,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_q > 0 || soap_flag_start > 0 || soap_flag_maxResults > 0 || soap_flag_filter > 0 || soap_flag_restrict_ > 0 || soap_flag_safeSearch > 0 || soap_flag_lr > 0 || soap_flag_ie > 0 || soap_flag_oe > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (struct gapi1__doGoogleSearch *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doGoogleSearch, 0, sizeof(struct gapi1__doGoogleSearch), 0, soap_copy_gapi1__doGoogleSearch); ++ { a = (struct gapi1__doGoogleSearch *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doGoogleSearch, 0, sizeof(struct gapi1__doGoogleSearch), 0, soap_copy_gapi1__doGoogleSearch); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_q > 0 || soap_flag_start > 0 || soap_flag_maxResults > 0 || soap_flag_filter > 0 || soap_flag_restrict_ > 0 || soap_flag_safeSearch > 0 || soap_flag_lr > 0 || soap_flag_ie > 0 || soap_flag_oe > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -2858,6 +2881,7 @@ + + SOAP_FMAC3 struct gapi1__doGoogleSearch * SOAP_FMAC4 soap_instantiate_gapi1__doGoogleSearch(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doGoogleSearch(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doGoogleSearch, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2868,27 +2892,32 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doGoogleSearch[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doGoogleSearch); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doGoogleSearch*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGoogleSearch(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doGoogleSearch %p -> %p\n", q, p)); + *(struct gapi1__doGoogleSearch*)p = *(struct gapi1__doGoogleSearch*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearchResponse(struct soap *soap, const struct gapi1__doGoogleSearchResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGoogleSearchResponse(struct soap *soap, struct gapi1__doGoogleSearchResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_PointerTogapi1__GoogleSearchResult(soap, &a->return_); ++ a->return_ = NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGoogleSearchResponse(struct soap *soap, struct gapi1__doGoogleSearchResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearchResponse(struct soap *soap, const struct gapi1__doGoogleSearchResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- a->return_ = NULL; ++ soap_serialize_PointerTogapi1__GoogleSearchResult(soap, &a->return_); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGoogleSearchResponse(struct soap *soap, const struct gapi1__doGoogleSearchResponse *a, const char *tag, const char *type) +@@ -2946,7 +2975,7 @@ + return NULL; + } + else +- { a = (struct gapi1__doGoogleSearchResponse *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doGoogleSearchResponse, 0, sizeof(struct gapi1__doGoogleSearchResponse), 0, NULL); ++ { a = (struct gapi1__doGoogleSearchResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doGoogleSearchResponse, 0, sizeof(struct gapi1__doGoogleSearchResponse), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -2963,6 +2992,7 @@ + + SOAP_FMAC3 struct gapi1__doGoogleSearchResponse * SOAP_FMAC4 soap_instantiate_gapi1__doGoogleSearchResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doGoogleSearchResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doGoogleSearchResponse, n, soap_fdelete); + if (!cp) + return NULL; +@@ -2973,29 +3003,34 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doGoogleSearchResponse[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doGoogleSearchResponse); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doGoogleSearchResponse*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGoogleSearchResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doGoogleSearchResponse %p -> %p\n", q, p)); + *(struct gapi1__doGoogleSearchResponse*)p = *(struct gapi1__doGoogleSearchResponse*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestion(struct soap *soap, const struct gapi1__doSpellingSuggestion *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestion(struct soap *soap, struct gapi1__doSpellingSuggestion *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &a->key); +- soap_serialize_std__string(soap, &a->phrase); ++ soap_default_std__string(soap, &a->key); ++ soap_default_std__string(soap, &a->phrase); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestion(struct soap *soap, struct gapi1__doSpellingSuggestion *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestion(struct soap *soap, const struct gapi1__doSpellingSuggestion *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default_std__string(soap, &a->key); +- soap_default_std__string(soap, &a->phrase); ++ soap_serialize_std__string(soap, &a->key); ++ soap_serialize_std__string(soap, &a->phrase); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doSpellingSuggestion(struct soap *soap, const struct gapi1__doSpellingSuggestion *a, const char *tag, const char *type) +@@ -3052,18 +3087,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_phrase > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (struct gapi1__doSpellingSuggestion *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doSpellingSuggestion, 0, sizeof(struct gapi1__doSpellingSuggestion), 0, soap_copy_gapi1__doSpellingSuggestion); ++ { a = (struct gapi1__doSpellingSuggestion *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doSpellingSuggestion, 0, sizeof(struct gapi1__doSpellingSuggestion), 0, soap_copy_gapi1__doSpellingSuggestion); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_phrase > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -3077,6 +3112,7 @@ + + SOAP_FMAC3 struct gapi1__doSpellingSuggestion * SOAP_FMAC4 soap_instantiate_gapi1__doSpellingSuggestion(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doSpellingSuggestion(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doSpellingSuggestion, n, soap_fdelete); + if (!cp) + return NULL; +@@ -3087,27 +3123,32 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doSpellingSuggestion[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doSpellingSuggestion); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doSpellingSuggestion*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doSpellingSuggestion(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doSpellingSuggestion %p -> %p\n", q, p)); + *(struct gapi1__doSpellingSuggestion*)p = *(struct gapi1__doSpellingSuggestion*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestionResponse(struct soap *soap, const struct gapi1__doSpellingSuggestionResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestionResponse(struct soap *soap, struct gapi1__doSpellingSuggestionResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &a->return_); ++ soap_default_std__string(soap, &a->return_); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestionResponse(struct soap *soap, struct gapi1__doSpellingSuggestionResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestionResponse(struct soap *soap, const struct gapi1__doSpellingSuggestionResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default_std__string(soap, &a->return_); ++ soap_serialize_std__string(soap, &a->return_); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doSpellingSuggestionResponse(struct soap *soap, const struct gapi1__doSpellingSuggestionResponse *a, const char *tag, const char *type) +@@ -3160,18 +3201,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_ > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (struct gapi1__doSpellingSuggestionResponse *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doSpellingSuggestionResponse, 0, sizeof(struct gapi1__doSpellingSuggestionResponse), 0, soap_copy_gapi1__doSpellingSuggestionResponse); ++ { a = (struct gapi1__doSpellingSuggestionResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doSpellingSuggestionResponse, 0, sizeof(struct gapi1__doSpellingSuggestionResponse), 0, soap_copy_gapi1__doSpellingSuggestionResponse); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_ > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -3185,6 +3226,7 @@ + + SOAP_FMAC3 struct gapi1__doSpellingSuggestionResponse * SOAP_FMAC4 soap_instantiate_gapi1__doSpellingSuggestionResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doSpellingSuggestionResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doSpellingSuggestionResponse, n, soap_fdelete); + if (!cp) + return NULL; +@@ -3195,29 +3237,34 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doSpellingSuggestionResponse[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doSpellingSuggestionResponse); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doSpellingSuggestionResponse*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doSpellingSuggestionResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doSpellingSuggestionResponse %p -> %p\n", q, p)); + *(struct gapi1__doSpellingSuggestionResponse*)p = *(struct gapi1__doSpellingSuggestionResponse*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPage(struct soap *soap, const struct gapi1__doGetCachedPage *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPage(struct soap *soap, struct gapi1__doGetCachedPage *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_std__string(soap, &a->key); +- soap_serialize_std__string(soap, &a->url); ++ soap_default_std__string(soap, &a->key); ++ soap_default_std__string(soap, &a->url); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPage(struct soap *soap, struct gapi1__doGetCachedPage *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPage(struct soap *soap, const struct gapi1__doGetCachedPage *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default_std__string(soap, &a->key); +- soap_default_std__string(soap, &a->url); ++ soap_serialize_std__string(soap, &a->key); ++ soap_serialize_std__string(soap, &a->url); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGetCachedPage(struct soap *soap, const struct gapi1__doGetCachedPage *a, const char *tag, const char *type) +@@ -3274,18 +3321,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_url > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (struct gapi1__doGetCachedPage *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doGetCachedPage, 0, sizeof(struct gapi1__doGetCachedPage), 0, soap_copy_gapi1__doGetCachedPage); ++ { a = (struct gapi1__doGetCachedPage *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doGetCachedPage, 0, sizeof(struct gapi1__doGetCachedPage), 0, soap_copy_gapi1__doGetCachedPage); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_key > 0 || soap_flag_url > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -3299,6 +3346,7 @@ + + SOAP_FMAC3 struct gapi1__doGetCachedPage * SOAP_FMAC4 soap_instantiate_gapi1__doGetCachedPage(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doGetCachedPage(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doGetCachedPage, n, soap_fdelete); + if (!cp) + return NULL; +@@ -3309,27 +3357,32 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doGetCachedPage[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doGetCachedPage); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doGetCachedPage*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGetCachedPage(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doGetCachedPage %p -> %p\n", q, p)); + *(struct gapi1__doGetCachedPage*)p = *(struct gapi1__doGetCachedPage*)q; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPageResponse(struct soap *soap, const struct gapi1__doGetCachedPageResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPageResponse(struct soap *soap, struct gapi1__doGetCachedPageResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- a->return_.soap_serialize(soap); ++ a->return_.xsd__base64Binary::soap_default(soap); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPageResponse(struct soap *soap, struct gapi1__doGetCachedPageResponse *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPageResponse(struct soap *soap, const struct gapi1__doGetCachedPageResponse *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- a->return_.xsd__base64Binary::soap_default(soap); ++ a->return_.soap_serialize(soap); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGetCachedPageResponse(struct soap *soap, const struct gapi1__doGetCachedPageResponse *a, const char *tag, const char *type) +@@ -3382,18 +3435,18 @@ + if (soap->error) + return NULL; + } +- if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_ > 0)) +- { soap->error = SOAP_OCCURS; +- return NULL; +- } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else +- { a = (struct gapi1__doGetCachedPageResponse *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_gapi1__doGetCachedPageResponse, 0, sizeof(struct gapi1__doGetCachedPageResponse), 0, soap_copy_gapi1__doGetCachedPageResponse); ++ { a = (struct gapi1__doGetCachedPageResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_gapi1__doGetCachedPageResponse, 0, sizeof(struct gapi1__doGetCachedPageResponse), 0, soap_copy_gapi1__doGetCachedPageResponse); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } ++ if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_ > 0)) ++ { soap->error = SOAP_OCCURS; ++ return NULL; ++ } + return a; + } + +@@ -3407,6 +3460,7 @@ + + SOAP_FMAC3 struct gapi1__doGetCachedPageResponse * SOAP_FMAC4 soap_instantiate_gapi1__doGetCachedPageResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_gapi1__doGetCachedPageResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:"")); + struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_gapi1__doGetCachedPageResponse, n, soap_fdelete); + if (!cp) + return NULL; +@@ -3417,14 +3471,19 @@ + } + else + { cp->ptr = (void*)new struct gapi1__doGetCachedPageResponse[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct gapi1__doGetCachedPageResponse); + } ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct gapi1__doGetCachedPageResponse*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGetCachedPageResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { ++ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct gapi1__doGetCachedPageResponse %p -> %p\n", q, p)); + *(struct gapi1__doGetCachedPageResponse*)p = *(struct gapi1__doGetCachedPageResponse*)q; + } + +diff -Naur ./Search/Google/GAPIClient.cpp ./Search/Google/GAPIClient.cpp +--- ./Search/Google/GAPIClient.cpp 2006-11-22 20:30:01.000000000 +0800 ++++ ./Search/Google/GAPIClient.cpp 2007-07-29 18:34:02.000000000 +0800 +@@ -1,12 +1,12 @@ + /* GAPIClient.cpp +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ + #include "GAPIH.h" + +-SOAP_SOURCE_STAMP("@(#) GAPIClient.cpp ver 2.7.8c 2006-11-22 12:30:01 GMT") ++SOAP_SOURCE_STAMP("@(#) GAPIClient.cpp ver 2.7.9e 2007-07-29 10:34:02 GMT") + + + SOAP_FMAC5 int SOAP_FMAC6 soap_call_gapi1__doGetCachedPage(struct soap *soap, const char *soap_endpoint, const char *soap_action, std::string key, std::string url, xsd__base64Binary &return_) +diff -Naur ./Search/Google/GAPIClientLib.cpp ./Search/Google/GAPIClientLib.cpp +--- ./Search/Google/GAPIClientLib.cpp 2006-11-22 20:30:01.000000000 +0800 ++++ ./Search/Google/GAPIClientLib.cpp 2007-07-29 18:34:02.000000000 +0800 +@@ -1,6 +1,6 @@ + /* GAPIClientLib.cpp +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +diff -Naur ./Search/Google/GAPIGoogleSearchBindingProxy.h ./Search/Google/GAPIGoogleSearchBindingProxy.h +--- ./Search/Google/GAPIGoogleSearchBindingProxy.h 2006-11-22 20:30:01.000000000 +0800 ++++ ./Search/Google/GAPIGoogleSearchBindingProxy.h 2007-07-29 18:34:02.000000000 +0800 +@@ -1,6 +1,6 @@ + /* GAPIGoogleSearchBindingProxy.h +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +@@ -14,7 +14,7 @@ + struct soap *soap; + const char *endpoint; + GoogleSearchBinding() { soap = soap_new(); if (soap) soap->namespaces = GAPI_namespaces; endpoint = "http://api.google.com/search/beta2"; }; +- virtual ~GoogleSearchBinding() { if (soap) { soap_destroy(soap); soap_end(soap); soap_done(soap); soap_del(soap); } }; ++ virtual ~GoogleSearchBinding() { if (soap) { soap_destroy(soap); soap_end(soap); soap_free(soap); } }; + virtual int gapi1__doGetCachedPage(std::string key, std::string url, xsd__base64Binary &return_) { return soap ? soap_call_gapi1__doGetCachedPage(soap, endpoint, NULL, key, url, return_) : SOAP_EOM; }; + virtual int gapi1__doSpellingSuggestion(std::string key, std::string phrase, std::string &return_) { return soap ? soap_call_gapi1__doSpellingSuggestion(soap, endpoint, NULL, key, phrase, return_) : SOAP_EOM; }; + virtual int gapi1__doGoogleSearch(std::string key, std::string q, int start, int maxResults, bool filter, std::string restrict_, bool safeSearch, std::string lr, std::string ie, std::string oe, struct gapi1__doGoogleSearchResponse &_param_1) { return soap ? soap_call_gapi1__doGoogleSearch(soap, endpoint, NULL, key, q, start, maxResults, filter, restrict_, safeSearch, lr, ie, oe, _param_1) : SOAP_EOM; }; +diff -Naur ./Search/Google/GAPIH.h ./Search/Google/GAPIH.h +--- ./Search/Google/GAPIH.h 2006-11-22 20:30:01.000000000 +0800 ++++ ./Search/Google/GAPIH.h 2007-07-29 18:34:02.000000000 +0800 +@@ -1,6 +1,6 @@ + /* GAPIH.h +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +@@ -8,17 +8,25 @@ + #ifndef GAPIH_H + #define GAPIH_H + #include "GAPIStub.h" +-SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap*); + #ifndef WITH_NOIDREF +-SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap*); +-SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap*); ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap*, const void*, int); + SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap*, const void*, const char*, int, int); +-SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap*, int*); ++SOAP_FMAC3 void *SOAP_FMAC4 soap_getelement(struct soap*, int*); ++ ++#ifdef __cplusplus ++} + #endif ++SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap*); ++SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap*); ++#endif ++SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap*); + + SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap*, int, const char*, const char*, size_t*); +-SOAP_FMAC3 void SOAP_FMAC4 soap_fdelete(struct soap_clist*); ++SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist*); + SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap*, const char*, void*, int, size_t, const char*, const char*); + + SOAP_FMAC3 void* SOAP_FMAC4 soap_container_id_forward(struct soap*, const char*, void*, size_t, int, int, size_t, unsigned int); +@@ -44,7 +52,7 @@ + SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap*, const char*, int *, const char*); + + #ifndef SOAP_TYPE_double +-#define SOAP_TYPE_double (23) ++#define SOAP_TYPE_double (22) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_default_double(struct soap*, double *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_double(struct soap*, const double *, const char*, const char*); +@@ -71,7 +79,7 @@ + SOAP_FMAC3 unsigned int * SOAP_FMAC4 soap_in_unsignedInt(struct soap*, const char*, unsigned int *, const char*); + + #ifndef SOAP_TYPE_bool +-#define SOAP_TYPE_bool (20) ++#define SOAP_TYPE_bool (18) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_default_bool(struct soap*, bool *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_bool(struct soap*, const bool *, const char*, const char*); +@@ -83,8 +91,22 @@ + + SOAP_FMAC3S int SOAP_FMAC4S soap_s2bool(struct soap*, const char*, bool *); + ++#ifndef SOAP_TYPE_std__string ++#define SOAP_TYPE_std__string (19) ++#endif ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap*, std::string *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap*, const std::string *); ++SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap*, const std::string *, const char*, const char*); ++SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap*, const char*, int, const std::string*, const char*); ++SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap*, std::string *, const char*, const char*); ++SOAP_FMAC3 std::string * SOAP_FMAC4 soap_in_std__string(struct soap*, const char*, std::string*, const char*); ++SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new_std__string(struct soap*, int); ++SOAP_FMAC5 void SOAP_FMAC6 soap_delete_std__string(struct soap*, std::string*); ++SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate_std__string(struct soap*, int, const char*, const char*, size_t*); ++SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap*, int, int, void*, size_t, const void*, size_t); ++ + #ifndef SOAP_TYPE_gapi1__DirectoryCategory +-#define SOAP_TYPE_gapi1__DirectoryCategory (19) ++#define SOAP_TYPE_gapi1__DirectoryCategory (17) + #endif + + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__DirectoryCategory(struct soap*, const char*, int, const gapi1__DirectoryCategory *, const char*); +@@ -96,7 +118,7 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__DirectoryCategory(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1DirectoryCategoryArray +-#define SOAP_TYPE_gapi1DirectoryCategoryArray (18) ++#define SOAP_TYPE_gapi1DirectoryCategoryArray (16) + #endif + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1DirectoryCategoryArray(struct soap*, const char*, int, const gapi1DirectoryCategoryArray *, const char*); + SOAP_FMAC3 gapi1DirectoryCategoryArray * SOAP_FMAC4 soap_get_gapi1DirectoryCategoryArray(struct soap*, gapi1DirectoryCategoryArray *, const char*, const char*); +@@ -107,7 +129,7 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1DirectoryCategoryArray(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1ResultElementArray +-#define SOAP_TYPE_gapi1ResultElementArray (17) ++#define SOAP_TYPE_gapi1ResultElementArray (15) + #endif + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1ResultElementArray(struct soap*, const char*, int, const gapi1ResultElementArray *, const char*); + SOAP_FMAC3 gapi1ResultElementArray * SOAP_FMAC4 soap_get_gapi1ResultElementArray(struct soap*, gapi1ResultElementArray *, const char*, const char*); +@@ -118,7 +140,7 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1ResultElementArray(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__ResultElement +-#define SOAP_TYPE_gapi1__ResultElement (16) ++#define SOAP_TYPE_gapi1__ResultElement (14) + #endif + + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__ResultElement(struct soap*, const char*, int, const gapi1__ResultElement *, const char*); +@@ -130,7 +152,7 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__ResultElement(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__GoogleSearchResult +-#define SOAP_TYPE_gapi1__GoogleSearchResult (15) ++#define SOAP_TYPE_gapi1__GoogleSearchResult (13) + #endif + + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__GoogleSearchResult(struct soap*, const char*, int, const gapi1__GoogleSearchResult *, const char*); +@@ -141,34 +163,6 @@ + SOAP_FMAC3 gapi1__GoogleSearchResult * SOAP_FMAC4 soap_instantiate_gapi1__GoogleSearchResult(struct soap*, int, const char*, const char*, size_t*); + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__GoogleSearchResult(struct soap*, int, int, void*, size_t, const void*, size_t); + +-#ifndef SOAP_TYPE__SOAP_ENC__arrayType +-#define SOAP_TYPE__SOAP_ENC__arrayType (14) +-#endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__SOAP_ENC__arrayType(struct soap*, std::string const*); +-SOAP_FMAC3 void SOAP_FMAC4 soap_default__SOAP_ENC__arrayType(struct soap*, std::string *); +-SOAP_FMAC3 int SOAP_FMAC4 soap_put__SOAP_ENC__arrayType(struct soap*, const std::string *, const char*, const char*); +-SOAP_FMAC3 int SOAP_FMAC4 soap_out__SOAP_ENC__arrayType(struct soap*, const char*, int, const std::string*, const char*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get__SOAP_ENC__arrayType(struct soap*, std::string *, const char*, const char*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_in__SOAP_ENC__arrayType(struct soap*, const char*, std::string*, const char*); +-SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new__SOAP_ENC__arrayType(struct soap*, int); +-SOAP_FMAC5 void SOAP_FMAC6 soap_delete__SOAP_ENC__arrayType(struct soap*, std::string*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate__SOAP_ENC__arrayType(struct soap*, int, const char*, const char*, size_t*); +-SOAP_FMAC3 void SOAP_FMAC4 soap_copy__SOAP_ENC__arrayType(struct soap*, int, int, void*, size_t, const void*, size_t); +- +-#ifndef SOAP_TYPE_std__string +-#define SOAP_TYPE_std__string (13) +-#endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap*, const std::string *); +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap*, std::string *); +-SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap*, const std::string *, const char*, const char*); +-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap*, const char*, int, const std::string*, const char*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap*, std::string *, const char*, const char*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_in_std__string(struct soap*, const char*, std::string*, const char*); +-SOAP_FMAC5 std::string * SOAP_FMAC6 soap_new_std__string(struct soap*, int); +-SOAP_FMAC5 void SOAP_FMAC6 soap_delete_std__string(struct soap*, std::string*); +-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_instantiate_std__string(struct soap*, int, const char*, const char*, size_t*); +-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap*, int, int, void*, size_t, const void*, size_t); +- + #ifndef SOAP_TYPE_xsd__base64Binary + #define SOAP_TYPE_xsd__base64Binary (7) + #endif +@@ -183,10 +177,10 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_SOAP_ENV__Fault +-#define SOAP_TYPE_SOAP_ENV__Fault (48) ++#define SOAP_TYPE_SOAP_ENV__Fault (47) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap*, const char*, int, const struct SOAP_ENV__Fault *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *, const char*, const char*); +@@ -201,10 +195,10 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_SOAP_ENV__Reason +-#define SOAP_TYPE_SOAP_ENV__Reason (47) ++#define SOAP_TYPE_SOAP_ENV__Reason (46) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap*, const char*, int, const struct SOAP_ENV__Reason *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *, const char*, const char*); +@@ -219,10 +213,10 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_SOAP_ENV__Detail +-#define SOAP_TYPE_SOAP_ENV__Detail (46) ++#define SOAP_TYPE_SOAP_ENV__Detail (45) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap*, const char*, int, const struct SOAP_ENV__Detail *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *, const char*, const char*); +@@ -237,10 +231,10 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_SOAP_ENV__Code +-#define SOAP_TYPE_SOAP_ENV__Code (44) ++#define SOAP_TYPE_SOAP_ENV__Code (43) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap*, const char*, int, const struct SOAP_ENV__Code *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *, const char*, const char*); +@@ -255,10 +249,10 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_SOAP_ENV__Header +-#define SOAP_TYPE_SOAP_ENV__Header (43) ++#define SOAP_TYPE_SOAP_ENV__Header (42) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap*, const char*, int, const struct SOAP_ENV__Header *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *, const char*, const char*); +@@ -271,10 +265,10 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doGoogleSearch +-#define SOAP_TYPE_gapi1__doGoogleSearch (40) ++#define SOAP_TYPE_gapi1__doGoogleSearch (39) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearch(struct soap*, const struct gapi1__doGoogleSearch *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGoogleSearch(struct soap*, struct gapi1__doGoogleSearch *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearch(struct soap*, const struct gapi1__doGoogleSearch *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGoogleSearch(struct soap*, const struct gapi1__doGoogleSearch *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doGoogleSearch(struct soap*, const char*, int, const struct gapi1__doGoogleSearch *, const char*); + SOAP_FMAC3 struct gapi1__doGoogleSearch * SOAP_FMAC4 soap_get_gapi1__doGoogleSearch(struct soap*, struct gapi1__doGoogleSearch *, const char*, const char*); +@@ -285,10 +279,10 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGoogleSearch(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__doGoogleSearchResponse +-#define SOAP_TYPE_gapi1__doGoogleSearchResponse (36) ++#define SOAP_TYPE_gapi1__doGoogleSearchResponse (35) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearchResponse(struct soap*, const struct gapi1__doGoogleSearchResponse *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGoogleSearchResponse(struct soap*, struct gapi1__doGoogleSearchResponse *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGoogleSearchResponse(struct soap*, const struct gapi1__doGoogleSearchResponse *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGoogleSearchResponse(struct soap*, const struct gapi1__doGoogleSearchResponse *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doGoogleSearchResponse(struct soap*, const char*, int, const struct gapi1__doGoogleSearchResponse *, const char*); + SOAP_FMAC3 struct gapi1__doGoogleSearchResponse * SOAP_FMAC4 soap_get_gapi1__doGoogleSearchResponse(struct soap*, struct gapi1__doGoogleSearchResponse *, const char*, const char*); +@@ -299,10 +293,10 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGoogleSearchResponse(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__doSpellingSuggestion +-#define SOAP_TYPE_gapi1__doSpellingSuggestion (35) ++#define SOAP_TYPE_gapi1__doSpellingSuggestion (34) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestion(struct soap*, const struct gapi1__doSpellingSuggestion *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestion(struct soap*, struct gapi1__doSpellingSuggestion *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestion(struct soap*, const struct gapi1__doSpellingSuggestion *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doSpellingSuggestion(struct soap*, const struct gapi1__doSpellingSuggestion *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doSpellingSuggestion(struct soap*, const char*, int, const struct gapi1__doSpellingSuggestion *, const char*); + SOAP_FMAC3 struct gapi1__doSpellingSuggestion * SOAP_FMAC4 soap_get_gapi1__doSpellingSuggestion(struct soap*, struct gapi1__doSpellingSuggestion *, const char*, const char*); +@@ -313,10 +307,10 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doSpellingSuggestion(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__doSpellingSuggestionResponse +-#define SOAP_TYPE_gapi1__doSpellingSuggestionResponse (34) ++#define SOAP_TYPE_gapi1__doSpellingSuggestionResponse (33) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestionResponse(struct soap*, const struct gapi1__doSpellingSuggestionResponse *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doSpellingSuggestionResponse(struct soap*, struct gapi1__doSpellingSuggestionResponse *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doSpellingSuggestionResponse(struct soap*, const struct gapi1__doSpellingSuggestionResponse *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doSpellingSuggestionResponse(struct soap*, const struct gapi1__doSpellingSuggestionResponse *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doSpellingSuggestionResponse(struct soap*, const char*, int, const struct gapi1__doSpellingSuggestionResponse *, const char*); + SOAP_FMAC3 struct gapi1__doSpellingSuggestionResponse * SOAP_FMAC4 soap_get_gapi1__doSpellingSuggestionResponse(struct soap*, struct gapi1__doSpellingSuggestionResponse *, const char*, const char*); +@@ -327,10 +321,10 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doSpellingSuggestionResponse(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__doGetCachedPage +-#define SOAP_TYPE_gapi1__doGetCachedPage (31) ++#define SOAP_TYPE_gapi1__doGetCachedPage (30) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPage(struct soap*, const struct gapi1__doGetCachedPage *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPage(struct soap*, struct gapi1__doGetCachedPage *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPage(struct soap*, const struct gapi1__doGetCachedPage *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGetCachedPage(struct soap*, const struct gapi1__doGetCachedPage *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doGetCachedPage(struct soap*, const char*, int, const struct gapi1__doGetCachedPage *, const char*); + SOAP_FMAC3 struct gapi1__doGetCachedPage * SOAP_FMAC4 soap_get_gapi1__doGetCachedPage(struct soap*, struct gapi1__doGetCachedPage *, const char*, const char*); +@@ -341,10 +335,10 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_gapi1__doGetCachedPage(struct soap*, int, int, void*, size_t, const void*, size_t); + + #ifndef SOAP_TYPE_gapi1__doGetCachedPageResponse +-#define SOAP_TYPE_gapi1__doGetCachedPageResponse (30) ++#define SOAP_TYPE_gapi1__doGetCachedPageResponse (29) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPageResponse(struct soap*, const struct gapi1__doGetCachedPageResponse *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_gapi1__doGetCachedPageResponse(struct soap*, struct gapi1__doGetCachedPageResponse *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_gapi1__doGetCachedPageResponse(struct soap*, const struct gapi1__doGetCachedPageResponse *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_gapi1__doGetCachedPageResponse(struct soap*, const struct gapi1__doGetCachedPageResponse *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_gapi1__doGetCachedPageResponse(struct soap*, const char*, int, const struct gapi1__doGetCachedPageResponse *, const char*); + SOAP_FMAC3 struct gapi1__doGetCachedPageResponse * SOAP_FMAC4 soap_get_gapi1__doGetCachedPageResponse(struct soap*, struct gapi1__doGetCachedPageResponse *, const char*, const char*); +@@ -357,7 +351,7 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_PointerToSOAP_ENV__Reason +-#define SOAP_TYPE_PointerToSOAP_ENV__Reason (50) ++#define SOAP_TYPE_PointerToSOAP_ENV__Reason (49) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *const*, const char*, const char*); +@@ -370,7 +364,7 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_PointerToSOAP_ENV__Detail +-#define SOAP_TYPE_PointerToSOAP_ENV__Detail (49) ++#define SOAP_TYPE_PointerToSOAP_ENV__Detail (48) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *const*, const char*, const char*); +@@ -383,7 +377,7 @@ + #ifndef WITH_NOGLOBAL + + #ifndef SOAP_TYPE_PointerToSOAP_ENV__Code +-#define SOAP_TYPE_PointerToSOAP_ENV__Code (45) ++#define SOAP_TYPE_PointerToSOAP_ENV__Code (44) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *const*, const char*, const char*); +@@ -394,7 +388,7 @@ + #endif + + #ifndef SOAP_TYPE_PointerTogapi1__GoogleSearchResult +-#define SOAP_TYPE_PointerTogapi1__GoogleSearchResult (37) ++#define SOAP_TYPE_PointerTogapi1__GoogleSearchResult (36) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTogapi1__GoogleSearchResult(struct soap*, gapi1__GoogleSearchResult *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTogapi1__GoogleSearchResult(struct soap*, gapi1__GoogleSearchResult *const*, const char*, const char*); +@@ -403,7 +397,7 @@ + SOAP_FMAC3 gapi1__GoogleSearchResult ** SOAP_FMAC4 soap_in_PointerTogapi1__GoogleSearchResult(struct soap*, const char*, gapi1__GoogleSearchResult **, const char*); + + #ifndef SOAP_TYPE_PointerToPointerTogapi1__DirectoryCategory +-#define SOAP_TYPE_PointerToPointerTogapi1__DirectoryCategory (27) ++#define SOAP_TYPE_PointerToPointerTogapi1__DirectoryCategory (26) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToPointerTogapi1__DirectoryCategory(struct soap*, gapi1__DirectoryCategory **const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToPointerTogapi1__DirectoryCategory(struct soap*, gapi1__DirectoryCategory **const*, const char*, const char*); +@@ -412,7 +406,7 @@ + SOAP_FMAC3 gapi1__DirectoryCategory *** SOAP_FMAC4 soap_in_PointerToPointerTogapi1__DirectoryCategory(struct soap*, const char*, gapi1__DirectoryCategory ***, const char*); + + #ifndef SOAP_TYPE_PointerToPointerTogapi1__ResultElement +-#define SOAP_TYPE_PointerToPointerTogapi1__ResultElement (26) ++#define SOAP_TYPE_PointerToPointerTogapi1__ResultElement (25) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToPointerTogapi1__ResultElement(struct soap*, gapi1__ResultElement **const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToPointerTogapi1__ResultElement(struct soap*, gapi1__ResultElement **const*, const char*, const char*); +@@ -421,7 +415,7 @@ + SOAP_FMAC3 gapi1__ResultElement *** SOAP_FMAC4 soap_in_PointerToPointerTogapi1__ResultElement(struct soap*, const char*, gapi1__ResultElement ***, const char*); + + #ifndef SOAP_TYPE_PointerTogapi1__ResultElement +-#define SOAP_TYPE_PointerTogapi1__ResultElement (25) ++#define SOAP_TYPE_PointerTogapi1__ResultElement (24) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTogapi1__ResultElement(struct soap*, gapi1__ResultElement *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTogapi1__ResultElement(struct soap*, gapi1__ResultElement *const*, const char*, const char*); +@@ -430,7 +424,7 @@ + SOAP_FMAC3 gapi1__ResultElement ** SOAP_FMAC4 soap_in_PointerTogapi1__ResultElement(struct soap*, const char*, gapi1__ResultElement **, const char*); + + #ifndef SOAP_TYPE_PointerTogapi1__DirectoryCategory +-#define SOAP_TYPE_PointerTogapi1__DirectoryCategory (24) ++#define SOAP_TYPE_PointerTogapi1__DirectoryCategory (23) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTogapi1__DirectoryCategory(struct soap*, gapi1__DirectoryCategory *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTogapi1__DirectoryCategory(struct soap*, gapi1__DirectoryCategory *const*, const char*, const char*); +@@ -439,7 +433,7 @@ + SOAP_FMAC3 gapi1__DirectoryCategory ** SOAP_FMAC4 soap_in_PointerTogapi1__DirectoryCategory(struct soap*, const char*, gapi1__DirectoryCategory **, const char*); + + #ifndef SOAP_TYPE_PointerTogapi1DirectoryCategoryArray +-#define SOAP_TYPE_PointerTogapi1DirectoryCategoryArray (22) ++#define SOAP_TYPE_PointerTogapi1DirectoryCategoryArray (21) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTogapi1DirectoryCategoryArray(struct soap*, gapi1DirectoryCategoryArray *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTogapi1DirectoryCategoryArray(struct soap*, gapi1DirectoryCategoryArray *const*, const char*, const char*); +@@ -448,7 +442,7 @@ + SOAP_FMAC3 gapi1DirectoryCategoryArray ** SOAP_FMAC4 soap_in_PointerTogapi1DirectoryCategoryArray(struct soap*, const char*, gapi1DirectoryCategoryArray **, const char*); + + #ifndef SOAP_TYPE_PointerTogapi1ResultElementArray +-#define SOAP_TYPE_PointerTogapi1ResultElementArray (21) ++#define SOAP_TYPE_PointerTogapi1ResultElementArray (20) + #endif + SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTogapi1ResultElementArray(struct soap*, gapi1ResultElementArray *const*); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTogapi1ResultElementArray(struct soap*, gapi1ResultElementArray *const*, const char*, const char*); +diff -Naur ./Search/Google/GAPIStub.h ./Search/Google/GAPIStub.h +--- ./Search/Google/GAPIStub.h 2006-11-22 20:30:01.000000000 +0800 ++++ ./Search/Google/GAPIStub.h 2007-07-29 18:34:02.000000000 +0800 +@@ -1,6 +1,6 @@ + /* GAPIStub.h +- Generated by gSOAP 2.7.8c from GoogleSearch.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from GoogleSearch.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +@@ -52,12 +52,12 @@ + }; + #endif + +-#if 0 /* volatile type: do no redeclare */ ++#if 0 /* volatile type: do not redeclare */ + + #endif + + #ifndef SOAP_TYPE_gapi1__GoogleSearchResult +-#define SOAP_TYPE_gapi1__GoogleSearchResult (15) ++#define SOAP_TYPE_gapi1__GoogleSearchResult (13) + /* gapi1:GoogleSearchResult */ + class SOAP_CMAC gapi1__GoogleSearchResult + { +@@ -75,7 +75,7 @@ + double searchTime; /* required element of type xsd:double */ + struct soap *soap; /* transient */ + public: +- virtual int soap_type() const { return 15; } /* = unique id SOAP_TYPE_gapi1__GoogleSearchResult */ ++ virtual int soap_type() const { return 13; } /* = unique id SOAP_TYPE_gapi1__GoogleSearchResult */ + virtual void soap_default(struct soap*); + virtual void soap_serialize(struct soap*) const; + virtual int soap_put(struct soap*, const char*, const char*) const; +@@ -88,7 +88,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__ResultElement +-#define SOAP_TYPE_gapi1__ResultElement (16) ++#define SOAP_TYPE_gapi1__ResultElement (14) + /* gapi1:ResultElement */ + class SOAP_CMAC gapi1__ResultElement + { +@@ -104,7 +104,7 @@ + std::string directoryTitle; /* required element of type xsd:string */ + struct soap *soap; /* transient */ + public: +- virtual int soap_type() const { return 16; } /* = unique id SOAP_TYPE_gapi1__ResultElement */ ++ virtual int soap_type() const { return 14; } /* = unique id SOAP_TYPE_gapi1__ResultElement */ + virtual void soap_default(struct soap*); + virtual void soap_serialize(struct soap*) const; + virtual int soap_put(struct soap*, const char*, const char*) const; +@@ -117,7 +117,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__DirectoryCategory +-#define SOAP_TYPE_gapi1__DirectoryCategory (19) ++#define SOAP_TYPE_gapi1__DirectoryCategory (17) + /* gapi1:DirectoryCategory */ + class SOAP_CMAC gapi1__DirectoryCategory + { +@@ -126,7 +126,7 @@ + std::string specialEncoding; /* required element of type xsd:string */ + struct soap *soap; /* transient */ + public: +- virtual int soap_type() const { return 19; } /* = unique id SOAP_TYPE_gapi1__DirectoryCategory */ ++ virtual int soap_type() const { return 17; } /* = unique id SOAP_TYPE_gapi1__DirectoryCategory */ + virtual void soap_default(struct soap*); + virtual void soap_serialize(struct soap*) const; + virtual int soap_put(struct soap*, const char*, const char*) const; +@@ -139,7 +139,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1ResultElementArray +-#define SOAP_TYPE_gapi1ResultElementArray (17) ++#define SOAP_TYPE_gapi1ResultElementArray (15) + /* SOAP encoded array of gapi1:ResultElement schema type: */ + class SOAP_CMAC gapi1ResultElementArray + { +@@ -148,7 +148,7 @@ + int __size; + struct soap *soap; /* transient */ + public: +- virtual int soap_type() const { return 17; } /* = unique id SOAP_TYPE_gapi1ResultElementArray */ ++ virtual int soap_type() const { return 15; } /* = unique id SOAP_TYPE_gapi1ResultElementArray */ + virtual void soap_default(struct soap*); + virtual void soap_serialize(struct soap*) const; + virtual int soap_put(struct soap*, const char*, const char*) const; +@@ -161,7 +161,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1DirectoryCategoryArray +-#define SOAP_TYPE_gapi1DirectoryCategoryArray (18) ++#define SOAP_TYPE_gapi1DirectoryCategoryArray (16) + /* SOAP encoded array of gapi1:DirectoryCategory schema type: */ + class SOAP_CMAC gapi1DirectoryCategoryArray + { +@@ -170,7 +170,7 @@ + int __size; + struct soap *soap; /* transient */ + public: +- virtual int soap_type() const { return 18; } /* = unique id SOAP_TYPE_gapi1DirectoryCategoryArray */ ++ virtual int soap_type() const { return 16; } /* = unique id SOAP_TYPE_gapi1DirectoryCategoryArray */ + virtual void soap_default(struct soap*); + virtual void soap_serialize(struct soap*) const; + virtual int soap_put(struct soap*, const char*, const char*) const; +@@ -183,7 +183,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doGetCachedPageResponse +-#define SOAP_TYPE_gapi1__doGetCachedPageResponse (30) ++#define SOAP_TYPE_gapi1__doGetCachedPageResponse (29) + /* gapi1:doGetCachedPageResponse */ + struct gapi1__doGetCachedPageResponse + { +@@ -193,7 +193,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doGetCachedPage +-#define SOAP_TYPE_gapi1__doGetCachedPage (31) ++#define SOAP_TYPE_gapi1__doGetCachedPage (30) + /* gapi1:doGetCachedPage */ + struct gapi1__doGetCachedPage + { +@@ -204,7 +204,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doSpellingSuggestionResponse +-#define SOAP_TYPE_gapi1__doSpellingSuggestionResponse (34) ++#define SOAP_TYPE_gapi1__doSpellingSuggestionResponse (33) + /* gapi1:doSpellingSuggestionResponse */ + struct gapi1__doSpellingSuggestionResponse + { +@@ -214,7 +214,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doSpellingSuggestion +-#define SOAP_TYPE_gapi1__doSpellingSuggestion (35) ++#define SOAP_TYPE_gapi1__doSpellingSuggestion (34) + /* gapi1:doSpellingSuggestion */ + struct gapi1__doSpellingSuggestion + { +@@ -225,7 +225,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doGoogleSearchResponse +-#define SOAP_TYPE_gapi1__doGoogleSearchResponse (36) ++#define SOAP_TYPE_gapi1__doGoogleSearchResponse (35) + /* gapi1:doGoogleSearchResponse */ + struct gapi1__doGoogleSearchResponse + { +@@ -235,7 +235,7 @@ + #endif + + #ifndef SOAP_TYPE_gapi1__doGoogleSearch +-#define SOAP_TYPE_gapi1__doGoogleSearch (40) ++#define SOAP_TYPE_gapi1__doGoogleSearch (39) + /* gapi1:doGoogleSearch */ + struct gapi1__doGoogleSearch + { +@@ -254,7 +254,7 @@ + #endif + + #ifndef SOAP_TYPE_SOAP_ENV__Header +-#define SOAP_TYPE_SOAP_ENV__Header (43) ++#define SOAP_TYPE_SOAP_ENV__Header (42) + /* SOAP Header: */ + struct SOAP_ENV__Header + { +@@ -264,18 +264,18 @@ + #endif + + #ifndef SOAP_TYPE_SOAP_ENV__Code +-#define SOAP_TYPE_SOAP_ENV__Code (44) ++#define SOAP_TYPE_SOAP_ENV__Code (43) + /* SOAP Fault Code: */ + struct SOAP_ENV__Code + { + public: +- char *SOAP_ENV__Value; /* optional element of type QName */ ++ char *SOAP_ENV__Value; /* optional element of type xsd:QName */ + struct SOAP_ENV__Code *SOAP_ENV__Subcode; /* optional element of type SOAP-ENV:Code */ + }; + #endif + + #ifndef SOAP_TYPE_SOAP_ENV__Detail +-#define SOAP_TYPE_SOAP_ENV__Detail (46) ++#define SOAP_TYPE_SOAP_ENV__Detail (45) + /* SOAP-ENV:Detail */ + struct SOAP_ENV__Detail + { +@@ -287,7 +287,7 @@ + #endif + + #ifndef SOAP_TYPE_SOAP_ENV__Reason +-#define SOAP_TYPE_SOAP_ENV__Reason (47) ++#define SOAP_TYPE_SOAP_ENV__Reason (46) + /* SOAP-ENV:Reason */ + struct SOAP_ENV__Reason + { +@@ -297,12 +297,12 @@ + #endif + + #ifndef SOAP_TYPE_SOAP_ENV__Fault +-#define SOAP_TYPE_SOAP_ENV__Fault (48) ++#define SOAP_TYPE_SOAP_ENV__Fault (47) + /* SOAP Fault: */ + struct SOAP_ENV__Fault + { + public: +- char *faultcode; /* optional element of type QName */ ++ char *faultcode; /* optional element of type xsd:QName */ + char *faultstring; /* optional element of type xsd:string */ + char *faultactor; /* optional element of type xsd:string */ + struct SOAP_ENV__Detail *detail; /* optional element of type SOAP-ENV:Detail */ +@@ -337,11 +337,6 @@ + typedef char *_QName; + #endif + +-#ifndef SOAP_TYPE__SOAP_ENC__arrayType +-#define SOAP_TYPE__SOAP_ENC__arrayType (14) +-typedef std::string _SOAP_ENC__arrayType; +-#endif +- + + /******************************************************************************\ + * * +diff -Naur ./Search/Google/GoogleSearch.h ./Search/Google/GoogleSearch.h +--- ./Search/Google/GoogleSearch.h 2006-11-22 20:29:42.000000000 +0800 ++++ ./Search/Google/GoogleSearch.h 2007-07-29 18:33:46.000000000 +0800 +@@ -1,6 +1,6 @@ + /* GoogleSearch.h +- Generated by wsdl2h 1.2.8c from googleapi/GoogleSearch.wsdl and typemap.dat +- 2006-11-22 12:29:42 GMT ++ Generated by wsdl2h 1.2.9e from googleapi/GoogleSearch.wsdl and typemap.dat ++ 2007-07-29 10:33:46 GMT + Copyright (C) 2001-2006 Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL or Genivia's license for commercial use. +@@ -38,6 +38,8 @@ + * * + \******************************************************************************/ + ++ ++// STL vector containers (use option -s to disable) + #import "stlvector.h" + + /******************************************************************************\ +@@ -75,9 +77,6 @@ + struct soap *soap; + }; + +-/// Built-in attribute "SOAP-ENC:arrayType". +-typedef std::string _SOAP_ENC__arrayType; +- + + // Forward declaration of class gapi1__GoogleSearchResult. + class gapi1__GoogleSearchResult; +@@ -219,6 +218,8 @@ + @section GoogleSearchBinding_ports Endpoints of Binding "GoogleSearchBinding" + - http://api.google.com/search/beta2 + ++Note: use wsdl2h option -N to change the service binding prefix name ++ + */ + + /******************************************************************************\ +@@ -244,9 +245,10 @@ + - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" + - SOAP action="urn:GoogleSearchAction" + +-C stub function (defined in soapClient.c[pp] after running soapcpp2): ++C stub function (defined in soapClient.c[pp] generated by soapcpp2): + @code +- int soap_call_gapi1__doGetCachedPage(struct soap *soap, ++ int soap_call_gapi1__doGetCachedPage( ++ struct soap *soap, + NULL, // char *endpoint = NULL selects default endpoint for this operation + NULL, // char *action = NULL selects default action for this operation + // request parameters: +@@ -257,6 +259,18 @@ + ); + @endcode + ++C server function (called from the service dispatcher defined in soapServer.c[pp]): ++@code ++ int gapi1__doGetCachedPage( ++ struct soap *soap, ++ // request parameters: ++ std::string key, ++ std::string url, ++ // response parameters: ++ xsd__base64Binary &return_ ++ ); ++@endcode ++ + C++ proxy class (defined in soapGoogleSearchBindingProxy.h): + class GoogleSearchBinding; + +@@ -287,9 +301,10 @@ + - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" + - SOAP action="urn:GoogleSearchAction" + +-C stub function (defined in soapClient.c[pp] after running soapcpp2): ++C stub function (defined in soapClient.c[pp] generated by soapcpp2): + @code +- int soap_call_gapi1__doSpellingSuggestion(struct soap *soap, ++ int soap_call_gapi1__doSpellingSuggestion( ++ struct soap *soap, + NULL, // char *endpoint = NULL selects default endpoint for this operation + NULL, // char *action = NULL selects default action for this operation + // request parameters: +@@ -300,6 +315,18 @@ + ); + @endcode + ++C server function (called from the service dispatcher defined in soapServer.c[pp]): ++@code ++ int gapi1__doSpellingSuggestion( ++ struct soap *soap, ++ // request parameters: ++ std::string key, ++ std::string phrase, ++ // response parameters: ++ std::string &return_ ++ ); ++@endcode ++ + C++ proxy class (defined in soapGoogleSearchBindingProxy.h): + class GoogleSearchBinding; + +@@ -335,9 +362,10 @@ + - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" + - SOAP action="urn:GoogleSearchAction" + +-C stub function (defined in soapClient.c[pp] after running soapcpp2): ++C stub function (defined in soapClient.c[pp] generated by soapcpp2): + @code +- int soap_call_gapi1__doGoogleSearch(struct soap *soap, ++ int soap_call_gapi1__doGoogleSearch( ++ struct soap *soap, + NULL, // char *endpoint = NULL selects default endpoint for this operation + NULL, // char *action = NULL selects default action for this operation + // request parameters: +@@ -356,6 +384,26 @@ + ); + @endcode + ++C server function (called from the service dispatcher defined in soapServer.c[pp]): ++@code ++ int gapi1__doGoogleSearch( ++ struct soap *soap, ++ // request parameters: ++ std::string key, ++ std::string q, ++ int start, ++ int maxResults, ++ bool filter, ++ std::string restrict_, ++ bool safeSearch, ++ std::string lr, ++ std::string ie, ++ std::string oe, ++ // response parameters: ++ struct gapi1__doGoogleSearchResponse& ++ ); ++@endcode ++ + C++ proxy class (defined in soapGoogleSearchBindingProxy.h): + class GoogleSearchBinding; + +diff -Naur ./Search/SOAPEnvC.cpp ./Search/SOAPEnvC.cpp +--- ./Search/SOAPEnvC.cpp 2006-11-22 20:33:15.000000000 +0800 ++++ ./Search/SOAPEnvC.cpp 2007-07-29 18:58:39.000000000 +0800 +@@ -1,13 +1,13 @@ + /* SOAPEnvC.cpp +- Generated by gSOAP 2.7.8c from SOAPEnv.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from SOAPEnv.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ + + #include "SOAPEnvH.h" + +-SOAP_SOURCE_STAMP("@(#) SOAPEnvC.cpp ver 2.7.8c 2006-11-22 12:33:15 GMT") ++SOAP_SOURCE_STAMP("@(#) SOAPEnvC.cpp ver 2.7.9e 2007-07-29 10:58:39 GMT") + + + #ifndef WITH_NOGLOBAL +@@ -39,21 +39,22 @@ + SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap) + { + if (!soap->fault) +- { soap->fault = (struct SOAP_ENV__Fault*)soap_malloc(soap, sizeof(struct SOAP_ENV__Fault)); ++ { soap->fault = soap_new_SOAP_ENV__Fault(soap, -1); + soap_default_SOAP_ENV__Fault(soap, soap->fault); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Code) +- { soap->fault->SOAP_ENV__Code = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); ++ { soap->fault->SOAP_ENV__Code = soap_new_SOAP_ENV__Code(soap, -1); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason) +- { soap->fault->SOAP_ENV__Reason = (struct SOAP_ENV__Reason*)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason)); ++ { soap->fault->SOAP_ENV__Reason = soap_new_SOAP_ENV__Reason(soap, -1); + soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason); + } + } + + SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap) + { ++ soap_fault(soap); + if (soap->fault) + soap_serialize_SOAP_ENV__Fault(soap, soap->fault); + } +@@ -83,7 +84,7 @@ + soap_fault(soap); + if (soap->version == 2) + { if (!soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode) +- { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); ++ { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = soap_new_SOAP_ENV__Code(soap, -1); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode); + } + return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; +@@ -110,7 +111,7 @@ + return (const char**)&soap->fault->detail->__any; + } + if (!soap->fault->SOAP_ENV__Detail) +- { soap->fault->SOAP_ENV__Detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); ++ { soap->fault->SOAP_ENV__Detail = soap_new_SOAP_ENV__Detail(soap, -1); + soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail); + } + return (const char**)&soap->fault->SOAP_ENV__Detail->__any; +@@ -133,6 +134,10 @@ + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type) + { + if (soap_peek_element(soap)) +@@ -169,7 +174,7 @@ + return s ? *s : NULL; + } + t = soap->tag; +- if (!soap_match_tag(soap, t, "QName")) ++ if (!soap_match_tag(soap, t, "xsd:QName")) + { char **s; + *type = SOAP_TYPE__QName; + s = soap_in__QName(soap, NULL, NULL, NULL); +@@ -180,6 +185,10 @@ + soap->error = SOAP_TAG_MISMATCH; + return NULL; + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap) +@@ -228,6 +237,10 @@ + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type) + { + switch (type) +@@ -237,15 +250,23 @@ + case SOAP_TYPE_int: + return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int"); + case SOAP_TYPE__QName: +- return soap_out_string(soap, "QName", id, (char**)&ptr, NULL); ++ return soap_out_string(soap, "xsd:QName", id, (char**)&ptr, NULL); + case SOAP_TYPE_string: + return soap_out_string(soap, tag, id, (char**)&ptr, "xsd:string"); + } + return SOAP_OK; + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + #ifndef WITH_NOIDREF ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type) + { + (void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ +@@ -259,17 +280,41 @@ + break; + } + } ++ ++#ifdef __cplusplus ++} ++#endif + #endif + + SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap *soap, int t, const char *type, const char *arrayType, size_t *n) + { + switch (t) + { ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Header: ++ return (void*)soap_instantiate_SOAP_ENV__Header(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Code: ++ return (void*)soap_instantiate_SOAP_ENV__Code(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Detail: ++ return (void*)soap_instantiate_SOAP_ENV__Detail(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Reason: ++ return (void*)soap_instantiate_SOAP_ENV__Reason(soap, -1, type, arrayType, n); ++#endif ++#ifndef WITH_NOGLOBAL ++ case SOAP_TYPE_SOAP_ENV__Fault: ++ return (void*)soap_instantiate_SOAP_ENV__Fault(soap, -1, type, arrayType, n); ++#endif + } + return NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_fdelete(struct soap_clist *p) ++SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist *p) + { switch (p->type) + { + case SOAP_TYPE_SOAP_ENV__Header: +@@ -302,7 +347,9 @@ + else + delete[] (struct SOAP_ENV__Fault*)p->ptr; + break; ++ default: return SOAP_ERR; + } ++ return SOAP_OK; + } + + SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap *soap, const char *id, void *p, int t, size_t n, const char *type, const char *arrayType) +@@ -379,20 +426,6 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) +-{ +- (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize__QName(soap, &a->faultcode); +- soap_serialize_string(soap, &a->faultstring); +- soap_serialize_string(soap, &a->faultactor); +- soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); +- soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); +- soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); +- soap_serialize_string(soap, &a->SOAP_ENV__Node); +- soap_serialize_string(soap, &a->SOAP_ENV__Role); +- soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); +-} +- + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +@@ -407,6 +440,20 @@ + a->SOAP_ENV__Detail = NULL; + } + ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) ++{ ++ (void)soap; (void)a; /* appease -Wall -Werror */ ++ soap_serialize__QName(soap, &a->faultcode); ++ soap_serialize_string(soap, &a->faultstring); ++ soap_serialize_string(soap, &a->faultactor); ++ soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); ++ soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); ++ soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); ++ soap_serialize_string(soap, &a->SOAP_ENV__Node); ++ soap_serialize_string(soap, &a->SOAP_ENV__Role); ++ soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); ++} ++ + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type) + { + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault); +@@ -508,7 +555,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); ++ { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -536,13 +583,16 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Fault[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Fault); + } + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Fault*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Fault(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Fault %p -> %p\n", q, p)); +@@ -553,16 +603,16 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize_string(soap, &a->SOAP_ENV__Text); ++ soap_default_string(soap, &a->SOAP_ENV__Text); + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default_string(soap, &a->SOAP_ENV__Text); ++ soap_serialize_string(soap, &a->SOAP_ENV__Text); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type) +@@ -617,7 +667,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); ++ { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -645,13 +695,16 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Reason[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Reason); + } + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Reason*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Reason(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Reason %p -> %p\n", q, p)); +@@ -662,12 +715,6 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) +-{ +- (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_markelement(soap, a->fault, a->__type); +-} +- + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +@@ -676,6 +723,12 @@ + a->__any = NULL; + } + ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) ++{ ++ (void)soap; (void)a; /* appease -Wall -Werror */ ++ soap_markelement(soap, a->fault, a->__type); ++} ++ + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type) + { + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail); +@@ -734,7 +787,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); ++ { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -762,13 +815,16 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Detail[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Detail); + } + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Detail*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Detail(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Detail %p -> %p\n", q, p)); +@@ -779,18 +835,18 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_serialize__QName(soap, &a->SOAP_ENV__Value); +- soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); ++ soap_default__QName(soap, &a->SOAP_ENV__Value); ++ a->SOAP_ENV__Subcode = NULL; + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ +- soap_default__QName(soap, &a->SOAP_ENV__Value); +- a->SOAP_ENV__Subcode = NULL; ++ soap_serialize__QName(soap, &a->SOAP_ENV__Value); ++ soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); + } + + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type) +@@ -852,7 +908,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); ++ { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -880,13 +936,16 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Code[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Code); + } + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Code*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Code(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Code %p -> %p\n", q, p)); +@@ -897,13 +956,13 @@ + + #ifndef WITH_NOGLOBAL + +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ + /* transient dummy skipped */ + } + +-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) + { + (void)soap; (void)a; /* appease -Wall -Werror */ + /* transient dummy skipped */ +@@ -956,7 +1015,7 @@ + return NULL; + } + else +- { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void**)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); ++ { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } +@@ -984,13 +1043,16 @@ + } + else + { cp->ptr = (void*)new struct SOAP_ENV__Header[n]; ++ if (!cp->ptr) ++ { soap->error = SOAP_EOM; ++ return NULL; ++ } + if (size) + *size = n * sizeof(struct SOAP_ENV__Header); + } + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr)); + return (struct SOAP_ENV__Header*)cp->ptr; + } +- + SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Header(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n) + { + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Header %p -> %p\n", q, p)); +diff -Naur ./Search/SOAPEnvH.h ./Search/SOAPEnvH.h +--- ./Search/SOAPEnvH.h 2006-11-22 20:33:15.000000000 +0800 ++++ ./Search/SOAPEnvH.h 2007-07-29 18:58:39.000000000 +0800 +@@ -1,6 +1,6 @@ + /* SOAPEnvH.h +- Generated by gSOAP 2.7.8c from SOAPEnv.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from SOAPEnv.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +@@ -8,17 +8,25 @@ + #ifndef SOAPEnvH_H + #define SOAPEnvH_H + #include "SOAPEnvStub.h" +-SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap*); + #ifndef WITH_NOIDREF +-SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap*); +-SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap*); ++ ++#ifdef __cplusplus ++extern "C" { ++#endif + SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap*, const void*, int); + SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap*, const void*, const char*, int, int); +-SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap*, int*); ++SOAP_FMAC3 void *SOAP_FMAC4 soap_getelement(struct soap*, int*); ++ ++#ifdef __cplusplus ++} + #endif ++SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap*); ++SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap*); ++#endif ++SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap*); + + SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap*, int, const char*, const char*, size_t*); +-SOAP_FMAC3 void SOAP_FMAC4 soap_fdelete(struct soap_clist*); ++SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist*); + SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap*, const char*, void*, int, size_t, const char*, const char*); + + #ifndef SOAP_TYPE_byte +@@ -44,8 +52,8 @@ + #ifndef SOAP_TYPE_SOAP_ENV__Fault + #define SOAP_TYPE_SOAP_ENV__Fault (13) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap*, const char*, int, const struct SOAP_ENV__Fault *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *, const char*, const char*); +@@ -62,8 +70,8 @@ + #ifndef SOAP_TYPE_SOAP_ENV__Reason + #define SOAP_TYPE_SOAP_ENV__Reason (12) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap*, const char*, int, const struct SOAP_ENV__Reason *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *, const char*, const char*); +@@ -80,8 +88,8 @@ + #ifndef SOAP_TYPE_SOAP_ENV__Detail + #define SOAP_TYPE_SOAP_ENV__Detail (11) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap*, const char*, int, const struct SOAP_ENV__Detail *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *, const char*, const char*); +@@ -98,8 +106,8 @@ + #ifndef SOAP_TYPE_SOAP_ENV__Code + #define SOAP_TYPE_SOAP_ENV__Code (9) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap*, const char*, int, const struct SOAP_ENV__Code *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *, const char*, const char*); +@@ -116,8 +124,8 @@ + #ifndef SOAP_TYPE_SOAP_ENV__Header + #define SOAP_TYPE_SOAP_ENV__Header (8) + #endif +-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *); + SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *); ++SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *); + SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *, const char*, const char*); + SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap*, const char*, int, const struct SOAP_ENV__Header *, const char*); + SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *, const char*, const char*); +diff -Naur ./Search/SOAPEnvStub.h ./Search/SOAPEnvStub.h +--- ./Search/SOAPEnvStub.h 2006-11-22 20:33:15.000000000 +0800 ++++ ./Search/SOAPEnvStub.h 2007-07-29 18:58:39.000000000 +0800 +@@ -1,6 +1,6 @@ + /* SOAPEnvStub.h +- Generated by gSOAP 2.7.8c from SOAPEnv.h +- Copyright (C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. ++ Generated by gSOAP 2.7.9e from SOAPEnv.h ++ Copyright(C) 2000-2006, Robert van Engelen, Genivia Inc. All Rights Reserved. + This part of the software is released under one of the following licenses: + GPL, the gSOAP public license, or Genivia's license for commercial use. + */ +@@ -39,7 +39,7 @@ + struct SOAP_ENV__Code + { + public: +- char *SOAP_ENV__Value; /* optional element of type QName */ ++ char *SOAP_ENV__Value; /* optional element of type xsd:QName */ + struct SOAP_ENV__Code *SOAP_ENV__Subcode; /* optional element of type SOAP-ENV:Code */ + }; + #endif +@@ -72,7 +72,7 @@ + struct SOAP_ENV__Fault + { + public: +- char *faultcode; /* optional element of type QName */ ++ char *faultcode; /* optional element of type xsd:QName */ + char *faultstring; /* optional element of type xsd:string */ + char *faultactor; /* optional element of type xsd:string */ + struct SOAP_ENV__Detail *detail; /* optional element of type SOAP-ENV:Detail */ diff --git a/deskutils/pinot/pkg-plist b/deskutils/pinot/pkg-plist index a89d7fe2fe18..bee64592931e 100644 --- a/deskutils/pinot/pkg-plist +++ b/deskutils/pinot/pkg-plist @@ -35,7 +35,6 @@ share/locale/sv/LC_MESSAGES/pinot.mo %%DATADIR%%/AmazonAPI.src %%DATADIR%%/engines/A9.src %%DATADIR%%/engines/Accoona.src -%%DATADIR%%/engines/Ask.src %%DATADIR%%/engines/BitTorrent.src %%DATADIR%%/engines/Clusty.src %%DATADIR%%/engines/CreativeCommons.src |