This is an automated email from the git hooks/post-receive script. thansen pushed a commit to branch master in repository aseprite.
commit 221e9bf4fcebd9cf01a8ae7d54e6552633139a95 Author: David Capello <[email protected]> Date: Mon Apr 11 19:17:39 2016 -0300 Add base::normalize_path() --- src/app/app.cpp | 2 +- src/app/file/file.cpp | 6 ++++-- src/app/recent_files.cpp | 6 ++---- src/base/path.cpp | 10 +++++++++- src/base/path.h | 6 +++++- src/doc/document.cpp | 4 ++-- src/doc/documents.cpp | 6 +++--- src/she/osx/app_delegate.mm | 3 ++- 8 files changed, 28 insertions(+), 15 deletions(-) diff --git a/src/app/app.cpp b/src/app/app.cpp index 425d7c5..97a5fce 100644 --- a/src/app/app.cpp +++ b/src/app/app.cpp @@ -547,7 +547,7 @@ void App::initialize(const AppOptions& options) } // File names aren't associated to any option else { - const std::string& filename = value.value(); + const std::string& filename = base::normalize_path(value.value()); app::Document* oldDoc = ctx->activeDocument(); diff --git a/src/app/file/file.cpp b/src/app/file/file.cpp index acfca1d..0ffc70d 100644 --- a/src/app/file/file.cpp +++ b/src/app/file/file.cpp @@ -711,10 +711,12 @@ void FileOp::postLoad() return; // Set the filename. + std::string fn; if (isSequence()) - m_document->setFilename(m_seq.filename_list.begin()->c_str()); + fn = m_seq.filename_list.begin()->c_str(); else - m_document->setFilename(m_filename.c_str()); + fn = m_filename.c_str(); + m_document->setFilename(fn); bool result = m_format->postLoad(this); if (!result) { diff --git a/src/app/recent_files.cpp b/src/app/recent_files.cpp index c456263..46f7604 100644 --- a/src/app/recent_files.cpp +++ b/src/app/recent_files.cpp @@ -1,5 +1,5 @@ // Aseprite -// Copyright (C) 2001-2015 David Capello +// Copyright (C) 2001-2016 David Capello // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License version 2 as @@ -103,9 +103,7 @@ void RecentFiles::removeRecentFile(const char* filename) std::string RecentFiles::normalizePath(std::string fn) { - fn = base::get_canonical_path(fn); - fn = base::fix_path_separators(fn); - return fn; + return base::normalize_path(fn); } } // namespace app diff --git a/src/base/path.cpp b/src/base/path.cpp index 0876cd5..9744fc4 100644 --- a/src/base/path.cpp +++ b/src/base/path.cpp @@ -1,5 +1,5 @@ // Aseprite Base Library -// Copyright (c) 2001-2013, 2015 David Capello +// Copyright (c) 2001-2016 David Capello // // This file is released under the terms of the MIT license. // Read LICENSE.txt for more information. @@ -10,6 +10,7 @@ #include "base/path.h" +#include "base/fs.h" // TODO we should merge base/path.h and base/fs.h #include "base/string.h" #include <algorithm> @@ -142,6 +143,13 @@ std::string fix_path_separators(const std::string& filename) return result; } +std::string normalize_path(const std::string& filename) +{ + std::string fn = base::get_canonical_path(filename); + fn = base::fix_path_separators(fn); + return fn; +} + bool has_file_extension(const std::string& filename, const std::string& csv_extensions) { if (!filename.empty()) { diff --git a/src/base/path.h b/src/base/path.h index d954cf7..e58baa5 100644 --- a/src/base/path.h +++ b/src/base/path.h @@ -1,5 +1,5 @@ // Aseprite Base Library -// Copyright (c) 2001-2013 David Capello +// Copyright (c) 2001-2016 David Capello // // This file is released under the terms of the MIT license. // Read LICENSE.txt for more information. @@ -40,6 +40,10 @@ namespace base { // Replaces all separators with the system separator. std::string fix_path_separators(const std::string& filename); + // Calls get_canonical_path() and fix_path_separators() for the + // given filename. + std::string normalize_path(const std::string& filename); + // Returns true if the filename contains one of the specified // extensions. The cvs_extensions parameter must be a set of // possible extensions separated by comma. diff --git a/src/doc/document.cpp b/src/doc/document.cpp index 946ed03..e41ed29 100644 --- a/src/doc/document.cpp +++ b/src/doc/document.cpp @@ -1,5 +1,5 @@ // Aseprite Document Library -// Copyright (c) 2001-2015 David Capello +// Copyright (c) 2001-2016 David Capello // // This file is released under the terms of the MIT license. // Read LICENSE.txt for more information. @@ -64,7 +64,7 @@ std::string Document::name() const void Document::setFilename(const std::string& filename) { - m_filename = filename; + m_filename = base::normalize_path(filename); notifyObservers(&DocumentObserver::onFileNameChanged, this); } diff --git a/src/doc/documents.cpp b/src/doc/documents.cpp index c245c95..05eff2f 100644 --- a/src/doc/documents.cpp +++ b/src/doc/documents.cpp @@ -1,5 +1,5 @@ // Aseprite Document Library -// Copyright (c) 2001-2014 David Capello +// Copyright (c) 2001-2016 David Capello // // This file is released under the terms of the MIT license. // Read LICENSE.txt for more information. @@ -106,9 +106,9 @@ Document* Documents::getByName(const std::string& name) const Document* Documents::getByFileName(const std::string& filename) const { - std::string fixfn = base::fix_path_separators(filename); + std::string fn = base::normalize_path(filename); for (const auto& doc : *this) { - if (base::fix_path_separators(doc->filename()) == fixfn) + if (doc->filename() == fn) return doc; } return NULL; diff --git a/src/she/osx/app_delegate.mm b/src/she/osx/app_delegate.mm index 76460d3..0c54771 100644 --- a/src/she/osx/app_delegate.mm +++ b/src/she/osx/app_delegate.mm @@ -12,6 +12,7 @@ #include "she/osx/app_delegate.h" +#include "base/path.h" #include "she/event.h" #include "she/event_queue.h" #include "she/osx/app.h" @@ -41,7 +42,7 @@ std::vector<std::string> files; for (int i=0; i<[filenames count]; ++i) { NSString* fn = [filenames objectAtIndex: i]; - files.push_back([fn UTF8String]); + files.push_back(base::normalize_path([fn UTF8String])); } she::Event ev; -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/aseprite.git _______________________________________________ Pkg-games-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

