author | qdii <qdii@reblochon.be> | 2012-11-02 19:46:03 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2012-11-02 19:49:46 (UTC) |
commit | 9ff6244998b0d41e71f7cc7351403ad590e990e4 (patch) (side-by-side diff) | |
tree | 4945d4bba357e8103bd61eb5c6be3600ef2e83be | |
parent | 648ae5dbd90e062f3432f809a846d50d994b86d4 (diff) | |
download | libopkele-9ff6244998b0d41e71f7cc7351403ad590e990e4.zip libopkele-9ff6244998b0d41e71f7cc7351403ad590e990e4.tar.gz libopkele-9ff6244998b0d41e71f7cc7351403ad590e990e4.tar.bz2 |
Fix argument-lookup failure on GCC 4.7.1, causing compilation to crash.
Modified-by: Michael Krelin <hacker@klever.net>
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | include/opkele/discovery.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/opkele/discovery.h b/include/opkele/discovery.h index f2721a6..985eef6 100644 --- a/include/opkele/discovery.h +++ b/include/opkele/discovery.h @@ -1,114 +1,114 @@ #ifndef __OPKELE_DISCOVERY_H #define __OPKELE_DISCOVERY_H #include <string> #include <opkele/types.h> namespace opkele { using std::string; namespace xrd { struct priority_compare { inline bool operator()(long a,long b) const { return (a<0) ? false : (b<0) ? true : (a<b); } }; template <typename _DT> class priority_map : public multimap<long,_DT,priority_compare> { typedef multimap<long,_DT,priority_compare> map_type; public: inline _DT& add(long priority,const _DT& d) { - return insert(typename map_type::value_type(priority,d))->second; + return this->insert(typename map_type::value_type(priority,d))->second; } bool has_value(const _DT& d) const { for(typename map_type::const_iterator i=this->begin();i!=this->end();++i) if(i->second==d) return true; return false; } }; typedef priority_map<string> canonical_ids_t; typedef priority_map<string> local_ids_t; typedef set<string> types_t; struct uri_t { string uri; string append; uri_t() { } uri_t(const string& u) : uri(u) { } uri_t(const string& u,const string& a) : uri(u), append(a) { } }; typedef priority_map<uri_t> uris_t; class service_t { public: types_t types; uris_t uris; local_ids_t local_ids; string provider_id; void clear() { types.clear(); uris.clear(); local_ids.clear(); provider_id.clear(); } }; typedef priority_map<service_t> services_t; class XRD_t { public: time_t expires; canonical_ids_t canonical_ids; local_ids_t local_ids; services_t services; string provider_id; void clear() { expires = 0; canonical_ids.clear(); local_ids.clear(); services.clear(); provider_id.clear(); } bool empty() const { return canonical_ids.empty() && local_ids.empty() && services.empty(); } }; } typedef openid_endpoint_output_iterator endpoint_discovery_iterator; string idiscover( endpoint_discovery_iterator oi, const string& identity); void yadiscover( endpoint_discovery_iterator oi, const string& yurl, const char **types, bool redirs=false); struct idiscovery_t { bool xri_identity; string normalized_id; string canonicalized_id; xrd::XRD_t xrd; idiscovery_t() { } void clear() { normalized_id.clear(); canonicalized_id.clear(); xrd.clear(); } }; } #endif /* __OPKELE_DISCOVERY_H */ |