From 2af22722117e215bb45ed28a51f43f506d18077a Mon Sep 17 00:00:00 2001 From: Carmelo Messina Date: Sun, 29 Oct 2023 18:02:41 +0100 Subject: [PATCH] #477 Add FLAG_OPEN_TRUNCATED while exporting --- .../Add-bookmark-import-export-actions.patch | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/build/patches/Add-bookmark-import-export-actions.patch b/build/patches/Add-bookmark-import-export-actions.patch index 0b23483a..dd560ea7 100644 --- a/build/patches/Add-bookmark-import-export-actions.patch +++ b/build/patches/Add-bookmark-import-export-actions.patch @@ -29,7 +29,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/about_flags.cc | 8 + .../bookmarks/android/bookmark_bridge.cc | 283 ++++++++++++++++++ .../bookmarks/android/bookmark_bridge.h | 30 +- - .../browser/bookmarks/bookmark_html_writer.cc | 11 + + .../browser/bookmarks/bookmark_html_writer.cc | 13 +- .../dialogs/DownloadLocationCustomView.java | 8 +- .../DownloadLocationDialogCoordinator.java | 8 +- chrome/browser/flag_descriptions.cc | 5 + @@ -43,7 +43,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../strings/android_chrome_strings.grd | 18 ++ chrome/common/BUILD.gn | 3 + chrome/utility/BUILD.gn | 7 +- - .../utility/importer/bookmark_html_reader.cc | 27 +- + .../utility/importer/bookmark_html_reader.cc | 28 +- .../utility/importer/bookmark_html_reader.h | 8 + .../headless_select_file_dialog.cc | 4 + .../chromium/ui/base/SelectFileDialog.java | 18 +- @@ -54,7 +54,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ui/shell_dialogs/select_file_dialog_linux.cc | 4 + ui/shell_dialogs/select_file_dialog_linux.h | 2 + ui/shell_dialogs/select_file_dialog_win.cc | 5 + - 44 files changed, 921 insertions(+), 29 deletions(-) + 44 files changed, 923 insertions(+), 30 deletions(-) diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml --- a/chrome/android/java/AndroidManifest.xml @@ -1296,10 +1296,12 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/favicon/favicon_service_factory.h" #include "chrome/browser/profiles/profile.h" -@@ -229,7 +232,15 @@ class Writer : public base::RefCountedThreadSafe { +@@ -228,8 +231,16 @@ class Writer : public base::RefCountedThreadSafe { + // Opens the file, returning true on success. bool OpenFile() { - int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE; +- int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE; ++ int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE | base::File::FLAG_OPEN_TRUNCATED; +#if BUILDFLAG(IS_ANDROID) + if (path_.IsContentUri()) { + file_ = std::make_unique(base::OpenContentUriForWrite(path_)); @@ -1623,7 +1625,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im } // namespace -@@ -105,14 +109,28 @@ static std::string stripDt(const std::string& lineDt) { +@@ -105,14 +109,29 @@ static std::string stripDt(const std::string& lineDt) { } void ImportBookmarksFile( @@ -1642,7 +1644,8 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im + return; + } + -+ ImportBookmarksFile(cancellation_callback, valid_url_callback, content, bookmarks, search_engines, favicons); ++ ImportBookmarksFile(cancellation_callback, valid_url_callback, ++ content, bookmarks, search_engines, favicons); +} + +void ImportBookmarksFile( @@ -1655,7 +1658,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im std::vector lines = base::SplitString( content, "\n", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); -@@ -125,6 +143,7 @@ void ImportBookmarksFile( +@@ -125,6 +144,7 @@ void ImportBookmarksFile( std::vector path; size_t toolbar_folder_index = 0; std::string charset = "UTF-8"; // If no charset is specified, assume utf-8. @@ -1663,7 +1666,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im for (size_t i = 0; i < lines.size() && (cancellation_callback.is_null() || !cancellation_callback.Run()); -@@ -217,10 +236,12 @@ void ImportBookmarksFile( +@@ -217,10 +237,12 @@ void ImportBookmarksFile( } bookmarks->push_back(entry);