@@ -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_type scheme () 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_type string () const { return uri_; }
170
175
171
176
bool is_valid () const { return is_valid_; }
0 commit comments