@@ -46,7 +46,7 @@ class BOOST_URI_DECL uri {
46
46
// parse();
47
47
// }
48
48
49
- uri (const string_type &uri ) : uri_(uri ), is_valid_(false ) {parse (); }
49
+ uri (const string_type &str ) : uri_(str ), is_valid_(false ) {parse (); }
50
50
51
51
template <class FwdIter >
52
52
uri (const FwdIter &first,const FwdIter &last)
@@ -109,8 +109,9 @@ class BOOST_URI_DECL uri {
109
109
}
110
110
111
111
// hackfix by Simon Haegler, Esri R&D Zurich
112
- // this workaround is needed to avoid running into the "incompatible string iterator" assertion
113
- // triggered by the default-constructed string iterators employed by cpp-netlib (see uri.ipp qi::rule declarations)
112
+ // this workaround is needed to avoid running into the "incompatible string
113
+ // iterator" assertion triggered by the default-constructed string iterators
114
+ // employed by cpp-netlib (see uri.ipp qi::rule declarations)
114
115
#if defined(_MSC_VER) && defined(_DEBUG)
115
116
#define CATCH_EMPTY_ITERATOR_RANGE if (range.begin()._Getcont() ==0 || range.end()._Getcont() ==0 ) {return string_type (); }
116
117
#else
@@ -120,7 +121,7 @@ class BOOST_URI_DECL uri {
120
121
string_typescheme ()const {
121
122
const_range_type range =scheme_range ();
122
123
CATCH_EMPTY_ITERATOR_RANGE
123
- return range ?string_type (boost::begin (range),boost::end (range))
124
+ return range ?string_type (boost::begin (range),boost::end (range))
124
125
:string_type ();
125
126
}
126
127
@@ -166,6 +167,10 @@ class BOOST_URI_DECL uri {
166
167
:string_type ();
167
168
}
168
169
170
+ #ifdef CATCH_EMPTY_ITERATOR_RANGE
171
+ #undef CATCH_EMPTY_ITERATOR_RANGE
172
+ #endif
173
+
169
174
string_typestring ()const {return uri_; }
170
175
171
176
bool is_valid ()const {return is_valid_; }