1 From a144c07915e82607bbc76791251e8e576e17149e Mon Sep 17 00:00:00 2001
2 From: Slava Dubrovskiy <dubrsl@altlinux.ru>
3 Date: Thu, 6 Sep 2012 20:18:45 +0300
4 Subject: [PATCH 2/2] Fix build with boost 1.51.0
7 libs/boost-lib/boost/filesystem/v2/fstream.hpp | 26 +++++++++++-----------
8 libs/boost-lib/boost/filesystem/v2/operations.hpp | 2 +-
9 libs/boost-lib/boost/filesystem/v2/path.hpp | 24 ++++++++++----------
10 libs/boost-lib/boost/filesystem/v3/path.hpp | 6 ++---
11 libs/boost-lib/libs/filesystem/v2/src/v2_path.cpp | 4 ++--
12 .../boost/logging/writer/on_dedicated_thread.hpp | 2 +-
13 .../samples/scenarios/ded_loger_one_filter.cpp | 2 +-
14 .../samples/scenarios/ts_loger_one_filter.cpp | 2 +-
15 .../logging/samples/scenarios/your_scenario.cpp | 2 +-
16 .../tests/test_simple_tss/test_simple_tss.cpp | 2 +-
17 .../test_ts_resource.cpp | 4 ++--
18 .../logging/tests/test_tss/test_tss_objects.cpp | 2 +-
19 src/mbase/project/table.cpp | 2 +-
20 src/mgui/author/script.cpp | 2 +-
21 src/mgui/editor/toolbar.cpp | 2 +-
22 src/mgui/mux.cpp | 2 +-
23 src/mgui/project/add.cpp | 6 ++---
24 src/mgui/project/mconstructor.cpp | 2 +-
25 src/mgui/project/serialize.cpp | 2 +-
26 src/mgui/win_utils.cpp | 2 +-
27 src/mlib/filesystem.cpp | 15 ++-----------
28 21 files changed, 51 insertions(+), 62 deletions(-)
30 diff --git a/libs/boost-lib/boost/filesystem/v2/fstream.hpp b/libs/boost-lib/boost/filesystem/v2/fstream.hpp
31 index bdcd485..101ed30 100644
32 --- a/libs/boost-lib/boost/filesystem/v2/fstream.hpp
33 +++ b/libs/boost-lib/boost/filesystem/v2/fstream.hpp
34 @@ -488,27 +488,27 @@ namespace boost
35 std::ios_base::openmode mode )
37 return std::basic_filebuf<charT,traits>::open(
38 - file_ph.file_string().c_str(), mode ) == 0 ? 0 : this;
39 + file_ph.string().c_str(), mode ) == 0 ? 0 : this;
43 template <class charT, class traits>
44 basic_ifstream<charT,traits>::basic_ifstream( const path & file_ph )
45 : std::basic_ifstream<charT,traits>(
46 - file_ph.file_string().c_str(), std::ios_base::in ) {}
47 + file_ph.string().c_str(), std::ios_base::in ) {}
49 template <class charT, class traits>
50 basic_ifstream<charT,traits>::basic_ifstream( const path & file_ph,
51 std::ios_base::openmode mode )
52 : std::basic_ifstream<charT,traits>(
53 - file_ph.file_string().c_str(), mode ) {}
54 + file_ph.string().c_str(), mode ) {}
56 # if !BOOST_WORKAROUND( BOOST_MSVC, <= 1200 ) // VC++ 6.0 can't handle this
57 template <class charT, class traits>
58 void basic_ifstream<charT,traits>::open( const path & file_ph )
60 std::basic_ifstream<charT,traits>::open(
61 - file_ph.file_string().c_str(), std::ios_base::in );
62 + file_ph.string().c_str(), std::ios_base::in );
65 template <class charT, class traits>
66 @@ -516,27 +516,27 @@ namespace boost
67 std::ios_base::openmode mode )
69 std::basic_ifstream<charT,traits>::open(
70 - file_ph.file_string().c_str(), mode );
71 + file_ph.string().c_str(), mode );
75 template <class charT, class traits>
76 basic_ofstream<charT,traits>::basic_ofstream( const path & file_ph )
77 : std::basic_ofstream<charT,traits>(
78 - file_ph.file_string().c_str(), std::ios_base::out ) {}
79 + file_ph.string().c_str(), std::ios_base::out ) {}
81 template <class charT, class traits>
82 basic_ofstream<charT,traits>::basic_ofstream( const path & file_ph,
83 std::ios_base::openmode mode )
84 : std::basic_ofstream<charT,traits>(
85 - file_ph.file_string().c_str(), mode ) {}
86 + file_ph.string().c_str(), mode ) {}
88 # if !BOOST_WORKAROUND( BOOST_MSVC, <= 1200 ) // VC++ 6.0 can't handle this
89 template <class charT, class traits>
90 void basic_ofstream<charT,traits>::open( const path & file_ph )
92 std::basic_ofstream<charT,traits>::open(
93 - file_ph.file_string().c_str(), std::ios_base::out );
94 + file_ph.string().c_str(), std::ios_base::out );
97 template <class charT, class traits>
98 @@ -544,14 +544,14 @@ namespace boost
99 std::ios_base::openmode mode )
101 std::basic_ofstream<charT,traits>::open(
102 - file_ph.file_string().c_str(), mode );
103 + file_ph.string().c_str(), mode );
107 template <class charT, class traits>
108 basic_fstream<charT,traits>::basic_fstream( const path & file_ph )
109 : std::basic_fstream<charT,traits>(
110 - file_ph.file_string().c_str(),
111 + file_ph.string().c_str(),
112 std::ios_base::in|std::ios_base::out ) {}
115 @@ -559,14 +559,14 @@ namespace boost
116 basic_fstream<charT,traits>::basic_fstream( const path & file_ph,
117 std::ios_base::openmode mode )
118 : std::basic_fstream<charT,traits>(
119 - file_ph.file_string().c_str(), mode ) {}
120 + file_ph.string().c_str(), mode ) {}
122 # if !BOOST_WORKAROUND( BOOST_MSVC, <= 1200 ) // VC++ 6.0 can't handle this
123 template <class charT, class traits>
124 void basic_fstream<charT,traits>::open( const path & file_ph )
126 std::basic_fstream<charT,traits>::open(
127 - file_ph.file_string().c_str(), std::ios_base::in|std::ios_base::out );
128 + file_ph.string().c_str(), std::ios_base::in|std::ios_base::out );
131 template <class charT, class traits>
132 @@ -574,7 +574,7 @@ namespace boost
133 std::ios_base::openmode mode )
135 std::basic_fstream<charT,traits>::open(
136 - file_ph.file_string().c_str(), mode );
137 + file_ph.string().c_str(), mode );
140 } // namespace filesystem2
141 diff --git a/libs/boost-lib/boost/filesystem/v2/operations.hpp b/libs/boost-lib/boost/filesystem/v2/operations.hpp
142 index 9bd35cd..ad08cc3 100644
143 --- a/libs/boost-lib/boost/filesystem/v2/operations.hpp
144 +++ b/libs/boost-lib/boost/filesystem/v2/operations.hpp
145 @@ -1081,7 +1081,7 @@ namespace boost
147 return path().filename();
149 - typename Path::string_type leaf() const
150 + typename Path::string_type filename().string() const
152 return path().filename();
154 diff --git a/libs/boost-lib/boost/filesystem/v2/path.hpp b/libs/boost-lib/boost/filesystem/v2/path.hpp
155 index d159c37..580b635 100644
156 --- a/libs/boost-lib/boost/filesystem/v2/path.hpp
157 +++ b/libs/boost-lib/boost/filesystem/v2/path.hpp
158 @@ -232,11 +232,11 @@ namespace boost
161 const string_type & string() const { return m_path; }
162 - const string_type file_string() const;
163 - const string_type directory_string() const { return file_string(); }
164 + const string_type string() const;
165 + const string_type string() const { return string(); }
167 - const external_string_type external_file_string() const { return Traits::to_external( *this, file_string() ); }
168 - const external_string_type external_directory_string() const { return Traits::to_external( *this, directory_string() ); }
169 + const external_string_type external_file_string() const { return Traits::to_external( *this, string() ); }
170 + const external_string_type external_directory_string() const { return Traits::to_external( *this, string() ); }
172 basic_path root_path() const;
173 string_type root_name() const;
174 @@ -248,7 +248,7 @@ namespace boost
175 string_type extension() const;
177 # ifndef BOOST_FILESYSTEM_NO_DEPRECATED
178 - string_type leaf() const { return filename(); }
179 + string_type filename().string() const { return filename(); }
180 basic_path branch_path() const { return parent_path(); }
181 bool has_leaf() const { return !m_path.empty(); }
182 bool has_branch_path() const { return !parent_path().empty(); }
183 @@ -309,8 +309,8 @@ namespace boost
184 // are only minor differences between generic and native path grammars.
185 // Private members might be quite different in other implementations,
186 // particularly where there were wide differences between portable and
187 - // native path formats, or between file_string() and
188 - // directory_string() formats, or simply that the implementation
189 + // native path formats, or between string() and
190 + // string() formats, or simply that the implementation
191 // was willing expend additional memory to achieve greater speed for
192 // some operations at the expense of other operations.
194 @@ -338,8 +338,8 @@ namespace boost
195 basic_path( const string_type & str, name_check ) { operator/=( str ); }
196 basic_path( const typename string_type::value_type * s, name_check )
198 - string_type native_file_string() const { return file_string(); }
199 - string_type native_directory_string() const { return directory_string(); }
200 + string_type native_file_string() const { return string(); }
201 + string_type native_directory_string() const { return string(); }
202 static bool default_name_check_writable() { return false; }
203 static void default_name_check( name_check ) {}
204 static name_check default_name_check() { return 0; }
205 @@ -647,13 +647,13 @@ namespace boost
206 if ( !path1_arg.empty() )
209 - target += path1_arg.file_string();
210 + target += path1_arg.string();
213 if ( !path2_arg.empty() )
216 - target += path2_arg.file_string();
217 + target += path2_arg.string();
221 @@ -1294,7 +1294,7 @@ namespace boost
223 template<class String, class Traits>
225 - basic_path<String, Traits>::file_string() const
226 + basic_path<String, Traits>::string() const
228 # ifdef BOOST_WINDOWS_PATH
229 // for Windows, use the alternate separator, and bypass extra
230 diff --git a/libs/boost-lib/boost/filesystem/v3/path.hpp b/libs/boost-lib/boost/filesystem/v3/path.hpp
231 index 0caa19f..fe3c975 100644
232 --- a/libs/boost-lib/boost/filesystem/v3/path.hpp
233 +++ b/libs/boost-lib/boost/filesystem/v3/path.hpp
234 @@ -389,7 +389,7 @@ namespace filesystem3
235 // recently deprecated functions supplied by default
236 path& normalize() { return m_normalize(); }
237 path& remove_leaf() { return remove_filename(); }
238 - path leaf() const { return filename(); }
239 + path filename().string() const { return filename(); }
240 path branch_path() const { return parent_path(); }
241 bool has_leaf() const { return !m_pathname.empty(); }
242 bool has_branch_path() const { return !parent_path().empty(); }
243 @@ -399,8 +399,8 @@ namespace filesystem3
244 # if defined(BOOST_FILESYSTEM_DEPRECATED)
245 // deprecated functions with enough signature or semantic changes that they are
246 // not supplied by default
247 - const std::string file_string() const { return string(); }
248 - const std::string directory_string() const { return string(); }
249 + const std::string string() const { return string(); }
250 + const std::string string() const { return string(); }
251 const std::string native_file_string() const { return string(); }
252 const std::string native_directory_string() const { return string(); }
253 const string_type external_file_string() const { return native(); }
254 diff --git a/libs/boost-lib/libs/filesystem/v2/src/v2_path.cpp b/libs/boost-lib/libs/filesystem/v2/src/v2_path.cpp
255 index 7adeaff..4fc0343 100644
256 --- a/libs/boost-lib/libs/filesystem/v2/src/v2_path.cpp
257 +++ b/libs/boost-lib/libs/filesystem/v2/src/v2_path.cpp
258 @@ -107,13 +107,13 @@ namespace boost
259 // if ( !path1.empty() )
262 - // target += path1.file_string();
263 + // target += path1.string();
266 // if ( !path2.empty() )
269 - // target += path2.file_string();
270 + // target += path2.string();
274 diff --git a/libs/boost-logging/boost/logging/writer/on_dedicated_thread.hpp b/libs/boost-logging/boost/logging/writer/on_dedicated_thread.hpp
275 index 7b0aa71..a4a6f28 100644
276 --- a/libs/boost-logging/boost/logging/writer/on_dedicated_thread.hpp
277 +++ b/libs/boost-logging/boost/logging/writer/on_dedicated_thread.hpp
278 @@ -166,7 +166,7 @@ private:
281 boost::xtime to_wait;
282 - xtime_get(&to_wait, boost::TIME_UTC);
283 + xtime_get(&to_wait, boost::TIME_UTC_);
284 to_wait.sec += sleep_ms / 1000;
285 to_wait.nsec += (sleep_ms % 1000) * (NANOSECONDS_PER_SECOND / 1000);
286 to_wait.sec += to_wait.nsec / NANOSECONDS_PER_SECOND ;
287 diff --git a/libs/boost-logging/lib/logging/samples/scenarios/ded_loger_one_filter.cpp b/libs/boost-logging/lib/logging/samples/scenarios/ded_loger_one_filter.cpp
288 index 1d934da..d45beb4 100644
289 --- a/libs/boost-logging/lib/logging/samples/scenarios/ded_loger_one_filter.cpp
290 +++ b/libs/boost-logging/lib/logging/samples/scenarios/ded_loger_one_filter.cpp
291 @@ -103,7 +103,7 @@ BOOST_DEFINE_LOG(g_l, log_type)
292 void do_sleep(int ms) {
293 using namespace boost;
295 - xtime_get( &next, TIME_UTC);
296 + xtime_get( &next, TIME_UTC_);
297 next.nsec += (ms % 1000) * 1000000;
299 int nano_per_sec = 1000000000;
300 diff --git a/libs/boost-logging/lib/logging/samples/scenarios/ts_loger_one_filter.cpp b/libs/boost-logging/lib/logging/samples/scenarios/ts_loger_one_filter.cpp
301 index 9746319..4b9f845 100644
302 --- a/libs/boost-logging/lib/logging/samples/scenarios/ts_loger_one_filter.cpp
303 +++ b/libs/boost-logging/lib/logging/samples/scenarios/ts_loger_one_filter.cpp
304 @@ -95,7 +95,7 @@ BOOST_DEFINE_LOG(g_l, log_type)
305 void do_sleep(int ms) {
306 using namespace boost;
308 - xtime_get( &next, TIME_UTC);
309 + xtime_get( &next, TIME_UTC_);
310 next.nsec += (ms % 1000) * 1000000;
312 int nano_per_sec = 1000000000;
313 diff --git a/libs/boost-logging/lib/logging/samples/scenarios/your_scenario.cpp b/libs/boost-logging/lib/logging/samples/scenarios/your_scenario.cpp
314 index d447f24..f5ad955 100644
315 --- a/libs/boost-logging/lib/logging/samples/scenarios/your_scenario.cpp
316 +++ b/libs/boost-logging/lib/logging/samples/scenarios/your_scenario.cpp
317 @@ -124,7 +124,7 @@ BOOST_DEFINE_LOG(g_log_dbg, finder::logger )
318 void do_sleep(int ms) {
319 using namespace boost;
321 - xtime_get( &next, TIME_UTC);
322 + xtime_get( &next, TIME_UTC_);
323 next.nsec += (ms % 1000) * 1000000;
325 int nano_per_sec = 1000000000;
326 diff --git a/libs/boost-logging/lib/logging/tests/test_simple_tss/test_simple_tss.cpp b/libs/boost-logging/lib/logging/tests/test_simple_tss/test_simple_tss.cpp
327 index 627618e..205d07a 100644
328 --- a/libs/boost-logging/lib/logging/tests/test_simple_tss/test_simple_tss.cpp
329 +++ b/libs/boost-logging/lib/logging/tests/test_simple_tss/test_simple_tss.cpp
330 @@ -75,7 +75,7 @@ using namespace logging;
332 void do_sleep(int ms) {
334 - xtime_get( &next, TIME_UTC);
335 + xtime_get( &next, TIME_UTC_);
336 next.nsec += (ms % 1000) * 1000000;
338 int nano_per_sec = 1000000000;
339 diff --git a/libs/boost-logging/lib/logging/tests/test_ts_resouce_with_cache/test_ts_resource.cpp b/libs/boost-logging/lib/logging/tests/test_ts_resouce_with_cache/test_ts_resource.cpp
340 index 0bee896..2217c12 100644
341 --- a/libs/boost-logging/lib/logging/tests/test_ts_resouce_with_cache/test_ts_resource.cpp
342 +++ b/libs/boost-logging/lib/logging/tests/test_ts_resouce_with_cache/test_ts_resource.cpp
343 @@ -167,7 +167,7 @@ void test_resource(int idx) {
345 void do_sleep(int ms) {
347 - xtime_get( &next, TIME_UTC);
348 + xtime_get( &next, TIME_UTC_);
349 next.nsec += (ms % 1000) * 1000000;
351 int nano_per_sec = 1000000000;
352 @@ -262,7 +262,7 @@ int g_run_period_secs = 200;
356 - xtime_get( &g_start, TIME_UTC);
357 + xtime_get( &g_start, TIME_UTC_);
359 for ( int i = 0; i < g_update_thread_count; ++i)
360 thread t(&update_thread);
361 diff --git a/libs/boost-logging/lib/logging/tests/test_tss/test_tss_objects.cpp b/libs/boost-logging/lib/logging/tests/test_tss/test_tss_objects.cpp
362 index b8e1ba6..14c8281 100644
363 --- a/libs/boost-logging/lib/logging/tests/test_tss/test_tss_objects.cpp
364 +++ b/libs/boost-logging/lib/logging/tests/test_tss/test_tss_objects.cpp
365 @@ -98,7 +98,7 @@ private:
367 void do_sleep(int ms) {
369 - xtime_get( &next, TIME_UTC);
370 + xtime_get( &next, TIME_UTC_);
371 next.nsec += (ms % 1000) * 1000000;
373 int nano_per_sec = 1000000000;
374 diff --git a/src/mbase/project/table.cpp b/src/mbase/project/table.cpp
375 index 33ee15a..feb851a 100644
376 --- a/src/mbase/project/table.cpp
377 +++ b/src/mbase/project/table.cpp
378 @@ -427,7 +427,7 @@ void GetThemeList(Str::List& t_lst)
380 for( fs::directory_iterator itr(dir), end; itr != end; ++itr )
381 if( IsFrameDir(*itr) )
382 - t_lst.push_back(itr->leaf());
383 + t_lst.push_back(itr->path().filename().string());
387 diff --git a/src/mgui/author/script.cpp b/src/mgui/author/script.cpp
388 index aa2b494..0c34a08 100644
389 --- a/src/mgui/author/script.cpp
390 +++ b/src/mgui/author/script.cpp
391 @@ -370,7 +370,7 @@ static std::string SrcFilename(VideoItem vi)
392 static std::string PrefixCnvPath(VideoItem vi, const std::string& out_dir)
394 std::string dst_fname = boost::format("%1%.%2%") % GetAuthorNumber(vi)
395 - % fs::path(SrcFilename(vi)).leaf() % bf::stop;
396 + % fs::path(SrcFilename(vi)).filename().string() % bf::stop;
397 return AppendPath(out_dir, dst_fname);
400 diff --git a/src/mgui/editor/toolbar.cpp b/src/mgui/editor/toolbar.cpp
401 index e549490..c6f15b3 100644
402 --- a/src/mgui/editor/toolbar.cpp
403 +++ b/src/mgui/editor/toolbar.cpp
404 @@ -287,7 +287,7 @@ Toolbar::Toolbar(): selTool(MakeSelectionToolImage()), txtTool(MakeTextToolLabel
405 if( fs::is_directory(dir) )
407 boost_foreach( const fs::path& pth, dir_range(dir) )
408 - o_lst.push_back(pth.filename());
409 + o_lst.push_back(pth.filename().string());
412 std::sort(o_lst.begin(), o_lst.end(), &ByExtName);
413 diff --git a/src/mgui/mux.cpp b/src/mgui/mux.cpp
414 index 4b4a5fa..0864bc2 100644
415 --- a/src/mgui/mux.cpp
416 +++ b/src/mgui/mux.cpp
417 @@ -72,7 +72,7 @@ void SetDialogStrict(Gtk::Dialog& dlg, int min_wdh, int min_hgt, bool set_resiza
419 static bool RunMuxing(const std::string& dest_path, const std::string& args)
421 - Gtk::Dialog dlg(BF_("Muxing \"%1%\"") % fs::path(dest_path).leaf() % bf::stop);
422 + Gtk::Dialog dlg(BF_("Muxing \"%1%\"") % fs::path(dest_path).filename().string() % bf::stop);
423 SetDialogStrict(dlg, 400, -1);
425 Gtk::TextView& txt_view = NewManaged<Gtk::TextView>();
426 diff --git a/src/mgui/project/add.cpp b/src/mgui/project/add.cpp
427 index db4df17..0425a9b 100644
428 --- a/src/mgui/project/add.cpp
429 +++ b/src/mgui/project/add.cpp
430 @@ -420,7 +420,7 @@ void TryAddMediaQuiet(const std::string& fname, const std::string& desc)
431 static std::string StandFNameOut(const fs::path& pth)
433 return "<span style=\"italic\" underline=\"low\">" +
434 - pth.leaf() + "</span>";
435 + pth.filename().string() + "</span>";
438 #if GTK_CHECK_VERSION(2,18,0)
439 @@ -454,7 +454,7 @@ StorageItem CheckExists(const fs::path& pth, RefPtr<MediaStore> ms)
441 void OneMediaError(const fs::path& err_pth, const std::string& desc)
443 - AddMediaError(BF_("Can't add file \"%1%\".") % err_pth.leaf() % bf::stop, desc);
444 + AddMediaError(BF_("Can't add file \"%1%\".") % err_pth.filename().string() % bf::stop, desc);
447 void TryAddMedias(const Str::List& paths, MediaBrowser& brw,
448 @@ -465,7 +465,7 @@ void TryAddMedias(const Str::List& paths, MediaBrowser& brw,
450 const std::string fname = paths[0];
452 - std::string leaf = pth.leaf();
453 + std::string leaf = pth.filename().string();
455 static re::pattern dvd_video_vob("(VIDEO_TS|VTS_[0-9][0-9]_[0-9]).VOB",
456 re::pattern::perl|re::pattern::icase);
457 diff --git a/src/mgui/project/mconstructor.cpp b/src/mgui/project/mconstructor.cpp
458 index 12e2f49..7ad2546 100644
459 --- a/src/mgui/project/mconstructor.cpp
460 +++ b/src/mgui/project/mconstructor.cpp
461 @@ -961,7 +961,7 @@ void RunConstructor(const std::string& prj_file_name, bool ask_save_on_exit)
462 static const fs::directory_iterator end_itr;
463 for( fs::directory_iterator itr(DataDirPath("bmd-icons"));
464 itr != end_itr; ++itr )
465 - pix_lst.push_back(Gdk::Pixbuf::create_from_file(itr->string()));
466 + pix_lst.push_back(Gdk::Pixbuf::create_from_file(itr->path().string()));
467 Gtk::Window::set_default_icon_list(pix_lst);
469 ActionFunctor after_fnr = BuildConstructor(app, prj_file_name);
470 diff --git a/src/mgui/project/serialize.cpp b/src/mgui/project/serialize.cpp
471 index 12b3c3a..2340b0b 100644
472 --- a/src/mgui/project/serialize.cpp
473 +++ b/src/mgui/project/serialize.cpp
474 @@ -71,7 +71,7 @@ static std::string MakeProjectTitle(bool with_path_breakdown = false)
475 return "untitled.bmd";
477 fs::path full_path(db.GetProjectFName());
478 - std::string res_str = full_path.leaf();
479 + std::string res_str = full_path.filename().string();
480 if( with_path_breakdown )
481 res_str += " (" + full_path.branch_path().string() + ")";
483 diff --git a/src/mgui/win_utils.cpp b/src/mgui/win_utils.cpp
484 index 28ad9dd..175e241 100644
485 --- a/src/mgui/win_utils.cpp
486 +++ b/src/mgui/win_utils.cpp
487 @@ -418,7 +418,7 @@ bool CheckKeepOrigin(const std::string& fname)
489 if( fs::exists(fname) &&
490 (Gtk::RESPONSE_OK != MessageBox(BF_("A file named \"%1%\" already exists. Do you want to replace it?")
491 - % fs::path(fname).leaf() % bf::stop,
492 + % fs::path(fname).filename().string() % bf::stop,
493 Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_OK_CANCEL,
494 _("Replacing the file overwrite its contents."),
496 diff --git a/src/mlib/filesystem.cpp b/src/mlib/filesystem.cpp
497 index bb84860..5d4f39c 100644
498 --- a/src/mlib/filesystem.cpp
499 +++ b/src/mlib/filesystem.cpp
500 @@ -47,7 +47,7 @@ const char* FindExtDot(const char* name)
502 std::string get_basename(const fs::path& pth)
504 - std::string name_s = pth.leaf();
505 + std::string name_s = pth.filename().string();
506 const char* name = name_s.c_str();
508 //if( const char* dot = strstr(name, ".") )
509 @@ -58,24 +58,13 @@ std::string get_basename(const fs::path& pth)
511 std::string get_extension(const fs::path& pth)
513 - std::string name_s = pth.leaf();
514 + std::string name_s = pth.filename().string();
516 if( const char* dot = FindExtDot(name_s.c_str()) )
517 return std::string(dot+1);
518 return std::string();
521 -// глобальная установка проверки имен файлов
522 -class tune_boost_filesystem
525 - tune_boost_filesystem()
527 - // чтоб любые символы в именах файлов позволялись, для utf8
528 - fs::path::default_name_check(fs::native);
530 -} tune_boost_filesystem_obj;