author | Michael Krelin <hacker@klever.net> | 2008-01-06 23:00:18 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2008-01-06 23:05:57 (UTC) |
commit | 7b5a82f255a85fe2ef466b68e40d9eb1829c633a (patch) (side-by-side diff) | |
tree | e466813db17bd974de0b0d277f35219c393c5796 /lib | |
parent | 6a843bb112988976892058c56d5fe2f24e24300a (diff) | |
download | libopkele-7b5a82f255a85fe2ef466b68e40d9eb1829c633a.zip libopkele-7b5a82f255a85fe2ef466b68e40d9eb1829c633a.tar.gz libopkele-7b5a82f255a85fe2ef466b68e40d9eb1829c633a.tar.bz2 |
Revert "discovery: stop parser with XML_StopParser()" for now
This reverts commit 7bde7f66284b47a75bbceadc360e7f03550ace21.
because some older expat version do not support this function I don't want to
make it conditional for now.
Conflicts:
lib/discovery.cc
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | lib/discovery.cc | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/discovery.cc b/lib/discovery.cc index af9686a..d868308 100644 --- a/lib/discovery.cc +++ b/lib/discovery.cc @@ -274,25 +274,25 @@ namespace opkele { ++skipping; return; } if(pt_stack.empty()) { if(is_qelement(n,NSURI_XRDS "\tXRDS")) return; if(is_qelement(n,NSURI_XRD "\tXRD")) { assert(xrd); xrd->clear(); pt_stack.push_back(n); }else if(xmode&xmode_html) { html_start_element(n,a); }else{ - skipping = -1; stop_parser(); + skipping = -1; } }else{ int pt_s = pt_stack.size(); if(pt_s==1) { if(is_qelement(n,NSURI_XRD "\tCanonicalID")) { assert(xrd); cdata = &(xrd->canonical_ids.add(element_priority(a),string())); }else if(is_qelement(n,NSURI_XRD "\tLocalID")) { assert(xrd); cdata = &(xrd->local_ids.add(element_priority(a),string())); }else if(is_qelement(n,NSURI_XRD "\tProviderID")) { assert(xrd); @@ -359,33 +359,32 @@ namespace opkele { xrd_service->types.insert(cdata_buf); }else if(is_qelement(n,NSURI_XRD "\tService")) { assert(xrd); assert(xrd_service); assert(!pt_stack.empty()); assert(pt_stack.back()==(NSURI_XRD "\tService")); pt_stack.pop_back(); xrd_service = 0; }else if(is_qelement(n,NSURI_XRD "\tStatus")) { assert(xrd); if(is_qelement(pt_stack.back().c_str(),n)) { assert(cdata==&status_string); pt_stack.pop_back(); - if(status_code!=100) { - skipping = -1; stop_parser(); - } + if(status_code!=100) + skipping = -1; } }else if(is_qelement(n,NSURI_XRD "\tExpires")) { assert(xrd); xrd->expires = util::w3c_to_time(cdata_buf); }else if((xmode&xmode_html) && is_element(n,"head")) { - skipping = -1; stop_parser(); + skipping = -1; } cdata = 0; } void character_data(const XML_Char *s,int l) { if(skipping) return; if(cdata) cdata->append(s,l); } void html_start_element(const XML_Char *n,const XML_Char **a) { if(is_element(n,"meta")) { bool heq = false; string l; @@ -424,24 +423,24 @@ namespace opkele { ns = s; } if(rel=="openid.server") html_openid1.uris.add(-1,href); else if(rel=="openid.delegate") html_openid1.local_ids.add(-1,href); else if(rel=="openid2.provider") html_openid2.uris.add(-1,href); else if(rel=="openid2.local_id") html_openid2.local_ids.add(-1,href); } }else if(is_element(n,"body")) { - skipping = -1; stop_parser(); + skipping = -1; } } }; void idiscover(idiscovery_t& result,const string& identity) { idigger_t idigger; idigger.discover(result,identity); } } |