Accepting request 999422 from home:seil0:branches:network

- Update to 11.23
  - Format local file times with no limits on time span
  - Deferred child item failure when traversing MTP folder
  - Fixed occasional wrong thumbnail orientation for MTP
  - Support additional image formats for MTP preview (e.g. CR2)
  - Fixed folder pair window being squashed after text size increase
  - Fixed wrong folder pair order when loading config (Linux)
  - Fixed some images being stretched on high-DPI monitors
  - Fixed config panel tab text being mirrored in RTL layout
  - Fixed parsing file times one second before Unix epoch (Gdrive, FTP)
- Changes from 11.22
  - Allow to change default log folder in global settings
  - Fixed sort order when items existing on one side only
  - Consider HOME environment variable for home path (Linux)
  - Fixed config selection using shift and arrow keys
  - Start comparison, then sync by only pressing Enter after startup
  - Fall back to default path when failing to save log file
  - Improved relative config path handling in portable mode
- Changes from 11.21
  - Support volume GUID as path: \\?\Volume{01234567-89ab-cdef-0123-456789abcdef} (Windows)
  - Avoid Two-Way conflict when changing folder name upper/lower-case
  - List hidden warning messages in options dialog
  - Fixed buffer overflow while receiving SFTP server banner
  - Create crash dumps even if FFS-internal crash handling doesn't kick in
  - Log time when error occured, not when it is reported
  - Swap sides: Require confirmation only after comparison
  - Updated translation files
- Changes from 11.20
  - Fixed broken icon scaling on high-DPI displays
  - Fixed user language set to English after update
- Drop obsolete FreeFileSync-build-with-gcc12.patch
- Drop obsolete FreeFileSync-build-with-wx3.1.5.patch
- Update FreeFileSync-disable-in-app-updates.patch for version 11.23
- Update FreeFileSync-icon-loader.patch for version 11.23
- Update FreeFileSync-resources.patch for version 11.23

OBS-URL: https://build.opensuse.org/request/show/999422
OBS-URL: https://build.opensuse.org/package/show/network/FreeFileSync?expand=0&rev=56
This commit is contained in:
Jannik Seiler 2022-08-26 15:22:53 +00:00 committed by Git OBS Bridge
parent 1a3ed4ed50
commit fb30e03c2e
9 changed files with 80 additions and 161 deletions

View File

@ -1,107 +0,0 @@
diff -Naur FreeFileSync_11.19_Source_orig/FreeFileSync/Source/base/db_file.cpp FreeFileSync_11.19_Source/FreeFileSync/Source/base/db_file.cpp
--- FreeFileSync_11.19_Source_orig/FreeFileSync/Source/base/db_file.cpp 2022-04-16 20:03:18.000000000 +0200
+++ FreeFileSync_11.19_Source/FreeFileSync/Source/base/db_file.cpp 2022-06-11 16:25:56.614662155 +0200
@@ -665,7 +665,7 @@
}
//delete removed items (= "in-sync") from database
- std::erase_if(dbFolders, [&](InSyncFolder::FolderList::value_type& v)
+ eraseIf(dbFolders, [&](InSyncFolder::FolderList::value_type& v)
{
if (auto it = toPreserve.find(v.first); it != toPreserve.end())
{
@@ -692,7 +692,7 @@
std::erase_if(dbFolder.files, [&](const InSyncFolder::FileList ::value_type& v) { return filter_.passFileFilter(parentRelPathPf + v.first); });
std::erase_if(dbFolder.symlinks, [&](const InSyncFolder::SymlinkList::value_type& v) { return filter_.passFileFilter(parentRelPathPf + v.first); });
- std::erase_if(dbFolder.folders, [&](InSyncFolder::FolderList::value_type& v)
+ eraseIf(dbFolder.folders, [&](InSyncFolder::FolderList::value_type& v)
{
const Zstring& itemRelPath = parentRelPathPf + v.first;
diff -Naur FreeFileSync_11.19_Source_orig/wx+/async_task.h FreeFileSync_11.19_Source/wx+/async_task.h
--- FreeFileSync_11.19_Source_orig/wx+/async_task.h 2022-04-16 20:03:18.000000000 +0200
+++ FreeFileSync_11.19_Source/wx+/async_task.h 2022-06-11 16:32:01.862210363 +0200
@@ -84,7 +84,7 @@
std::vector<std::unique_ptr<Task>> readyTasks; //Reentrancy; access to AsyncTasks::add is not protected! => evaluate outside eraseIf
- std::erase_if(tasks_, [&](std::unique_ptr<Task>& task)
+ eraseIf(tasks_, [&](std::unique_ptr<Task>& task)
{
if (task->resultReady())
{
diff -Naur FreeFileSync_11.19_Source_orig/zen/stl_tools.h FreeFileSync_11.19_Source/zen/stl_tools.h
--- FreeFileSync_11.19_Source_orig/zen/stl_tools.h 2022-04-16 20:03:18.000000000 +0200
+++ FreeFileSync_11.19_Source/zen/stl_tools.h 2022-06-11 16:50:12.672858637 +0200
@@ -10,6 +10,8 @@
#include <set>
#include <map>
#include <vector>
+#include <unordered_set>
+#include <unordered_map>
#include <memory>
#include <cassert>
#include <algorithm>
@@ -20,6 +22,16 @@
//enhancements for <algorithm>
namespace zen
{
+//unfortunately std::erase_if is useless garbage on GCC 12 (requires non-modifying predicate)
+template <class T, class Alloc, class Predicate>
+void eraseIf(std::vector<T, Alloc>& v, Predicate p);
+
+template <class T, class LessType, class Alloc, class Predicate>
+void eraseIf(std::set<T, LessType, Alloc>& s, Predicate p);
+
+template <class KeyType, class ValueType, class LessType, class Alloc, class Predicate>
+void eraseIf(std::map<KeyType, ValueType, LessType, Alloc>& m, Predicate p);
+
//append STL containers
template <class T, class Alloc, class C>
void append(std::vector<T, Alloc>& v, const C& c);
@@ -104,6 +116,44 @@
//######################## implementation ########################
+
+template <class T, class Alloc, class Predicate> inline
+void eraseIf(std::vector<T, Alloc>& v, Predicate p)
+{
+ v.erase(std::remove_if(v.begin(), v.end(), p), v.end());
+}
+
+
+namespace impl
+{
+template <class S, class Predicate> inline
+void setOrMapEraseIf(S& s, Predicate p)
+{
+ for (auto it = s.begin(); it != s.end();)
+ if (p(*it))
+ s.erase(it++);
+ else
+ ++it;
+}
+}
+
+
+template <class T, class LessType, class Alloc, class Predicate> inline
+void eraseIf(std::set<T, LessType, Alloc>& s, Predicate p) { impl::setOrMapEraseIf(s, p); } //don't make this any more generic! e.g. must not compile for std::vector!!!
+
+
+template <class KeyType, class ValueType, class LessType, class Alloc, class Predicate> inline
+void eraseIf(std::map<KeyType, ValueType, LessType, Alloc>& m, Predicate p) { impl::setOrMapEraseIf(m, p); }
+
+
+template <class T, class Hash, class Keyeq, class Alloc, class Predicate> inline
+void eraseIf(std::unordered_set<T, Hash, Keyeq, Alloc>& s, Predicate p) { impl::setOrMapEraseIf(s, p); }
+
+
+template <class KeyType, class ValueType, class Hash, class Keyeq, class Alloc, class Predicate> inline
+void eraseIf(std::unordered_map<KeyType, ValueType, Hash, Keyeq, Alloc>& m, Predicate p) { impl::setOrMapEraseIf(m, p); }
+
+
template <class T, class Alloc, class C> inline
void append(std::vector<T, Alloc>& v, const C& c) { v.insert(v.end(), c.begin(), c.end()); }

View File

@ -1,14 +0,0 @@
diff -Naur FreeFileSync_11.19_Source_orig/wx+/dc.h FreeFileSync_11.19_Source/wx+/dc.h
--- FreeFileSync_11.19_Source_orig/wx+/dc.h 2022-04-16 20:03:18.000000000 +0200
+++ FreeFileSync_11.19_Source/wx+/dc.h 2022-06-11 16:08:23.827967980 +0200
@@ -91,8 +91,8 @@
inline
int getDPI()
{
-#ifndef wxHAS_DPI_INDEPENDENT_PIXELS
-#error why is wxHAS_DPI_INDEPENDENT_PIXELS not defined?
+#ifndef wxHAVE_DPI_INDEPENDENT_PIXELS
+#error why is wxHAVE_DPI_INDEPENDENT_PIXELS not defined?
#endif
//GTK2 doesn't properly support high DPI: https://freefilesync.org/forum/viewtopic.php?t=6114
//=> requires general fix at wxWidgets-level

View File

@ -1,28 +1,28 @@
diff -Naur FreeFileSync_11.16_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp FreeFileSync_11.16_Source/FreeFileSync/Source/ui/gui_generated.cpp
--- FreeFileSync_11.16_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp 2022-01-02 18:32:20.000000000 +0100
+++ FreeFileSync_11.16_Source/FreeFileSync/Source/ui/gui_generated.cpp 2022-01-16 18:08:11.272184873 +0100
diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/gui_generated.cpp
--- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp 2022-07-23 15:18:28.000000000 +0200
+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/gui_generated.cpp 2022-08-26 15:47:40.998770347 +0200
@@ -108,13 +108,14 @@
m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL );
m_menuHelp->Append( m_menuItemHelp );
m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL );
m_menuHelp->Append( m_menuItemHelp );
- m_menuHelp->AppendSeparator();
- m_menuHelp->AppendSeparator();
+ // disable update/auto update actions for packaged version (they are only hidden, to not break any code and keep the patch small)
+ //m_menuHelp->AppendSeparator();
+ //m_menuHelp->AppendSeparator();
m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ) , wxEmptyString, wxITEM_NORMAL );
- m_menuHelp->Append( m_menuItemCheckVersionNow );
+ //m_menuHelp->Append( m_menuItemCheckVersionNow );
m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ), wxEmptyString, wxITEM_NORMAL );
- m_menuHelp->Append( m_menuItemCheckVersionNow );
+ //m_menuHelp->Append( m_menuItemCheckVersionNow );
m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ) , wxEmptyString, wxITEM_CHECK );
- m_menuHelp->Append( m_menuItemCheckVersionAuto );
+ //m_menuHelp->Append( m_menuItemCheckVersionAuto );
m_menuItemCheckVersionAuto->Check( true );
m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ), wxEmptyString, wxITEM_CHECK );
- m_menuHelp->Append( m_menuItemCheckVersionAuto );
+ //m_menuHelp->Append( m_menuItemCheckVersionAuto );
m_menuItemCheckVersionAuto->Check( true );
m_menuHelp->AppendSeparator();
diff -Naur FreeFileSync_11.13_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp FreeFileSync_11.13_Source/FreeFileSync/Source/ui/main_dlg.cpp
--- FreeFileSync_11.13_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp 2021-08-17 09:48:08.000000000 +0200
+++ FreeFileSync_11.13_Source/FreeFileSync/Source/ui/main_dlg.cpp 2022-01-16 17:27:16.593500053 +0100
@@ -845,7 +845,7 @@
m_menuHelp->AppendSeparator();
diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/main_dlg.cpp
--- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp 2022-07-23 15:18:28.000000000 +0200
+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/main_dlg.cpp 2022-08-26 15:48:40.582681036 +0200
@@ -928,7 +928,7 @@
updateGui();
//register regular check for update on next idle event
@ -31,9 +31,9 @@ diff -Naur FreeFileSync_11.13_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp Fr
//asynchronous call to wxWindow::Layout(): fix superfluous frame on right and bottom when FFS is started in fullscreen mode
Bind(wxEVT_IDLE, &MainDialog::onLayoutWindowAsync, this);
diff -Naur FreeFileSync_11.13_Source_orig/FreeFileSync/Source/ui/version_check.cpp FreeFileSync_11.13_Source/FreeFileSync/Source/ui/version_check.cpp
--- FreeFileSync_11.13_Source_orig/FreeFileSync/Source/ui/version_check.cpp 2022-01-16 17:31:51.876901517 +0100
+++ FreeFileSync_11.13_Source/FreeFileSync/Source/ui/version_check.cpp 2022-01-16 17:32:03.004877442 +0100
diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/version_check.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/version_check.cpp
--- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/version_check.cpp 2022-07-23 15:18:28.000000000 +0200
+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/version_check.cpp 2022-08-26 15:49:30.950625085 +0200
@@ -77,7 +77,9 @@
return false;

View File

@ -1,11 +1,12 @@
--- FreeFileSync_11.9_Source_orig/FreeFileSync/Source/base/icon_loader.cpp 2021-04-01 20:49:34.000000000 +0200
+++ FreeFileSync_11.9_Source/FreeFileSync/Source/base/icon_loader.cpp 2021-05-14 16:26:33.212337647 +0200
@@ -216,7 +216,7 @@
diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/base/icon_loader.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/base/icon_loader.cpp
--- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/base/icon_loader.cpp 2022-07-23 15:18:28.000000000 +0200
+++ FreeFileSync_11.23_Source/FreeFileSync/Source/base/icon_loader.cpp 2022-08-26 15:59:38.453852879 +0200
@@ -227,7 +227,7 @@
//the remaining icon types won't block!
assert(GDK_IS_PIXBUF(gicon) || G_IS_THEMED_ICON(gicon) || G_IS_EMBLEMED_ICON(gicon));
- return FileIconHolder(static_cast<GIcon*>(::g_object_ref(gicon)) /*pass ownership*/, maxSize);
+ return FileIconHolder(gicon /*pass ownership*/, maxSize);
- ::g_object_ref(gicon); //pass ownership
+ //::g_object_ref(gicon); //pass ownership
return FileIconHolder(gicon, maxSize); //
}

View File

@ -1,10 +1,11 @@
--- FreeFileSync_11.0_Source_orig/FreeFileSync/Source/ffs_paths.cpp 2020-07-22 13:22:20.000000000 +0200
+++ FreeFileSync_11.0_Source/FreeFileSync/Source/ffs_paths.cpp 2020-08-04 15:21:24.667813874 +0200
@@ -64,7 +64,8 @@
diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ffs_paths.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ffs_paths.cpp
--- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ffs_paths.cpp 2022-07-23 15:18:28.000000000 +0200
+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ffs_paths.cpp 2022-08-26 15:41:30.007973691 +0200
@@ -49,7 +49,8 @@
Zstring fff::getResourceDirPf()
Zstring fff::getResourceDirPath()
{
- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR;
- return appendPath(getProcessParentFolderPath(), Zstr("Resources"));
+ // for opensuse install to /usr/share/FreeFileSync specificly
+ return Zstr("/usr/share/FreeFileSync/");
}

View File

@ -1,4 +1,42 @@
-------------------------------------------------------------------
Sat Aug 26 15:03:02 UTC 2022 - Jannik Seiler <seil0@mosad.xyz>
- Update to 11.23
- Format local file times with no limits on time span
- Deferred child item failure when traversing MTP folder
- Fixed occasional wrong thumbnail orientation for MTP
- Support additional image formats for MTP preview (e.g. CR2)
- Fixed folder pair window being squashed after text size increase
- Fixed wrong folder pair order when loading config (Linux)
- Fixed some images being stretched on high-DPI monitors
- Fixed config panel tab text being mirrored in RTL layout
- Fixed parsing file times one second before Unix epoch (Gdrive, FTP)
- Changes from 11.22
- Allow to change default log folder in global settings
- Fixed sort order when items existing on one side only
- Consider HOME environment variable for home path (Linux)
- Fixed config selection using shift and arrow keys
- Start comparison, then sync by only pressing Enter after startup
- Fall back to default path when failing to save log file
- Improved relative config path handling in portable mode
- Changes from 11.21
- Support volume GUID as path: \\?\Volume{01234567-89ab-cdef-0123-456789abcdef} (Windows)
- Avoid Two-Way conflict when changing folder name upper/lower-case
- List hidden warning messages in options dialog
- Fixed buffer overflow while receiving SFTP server banner
- Create crash dumps even if FFS-internal crash handling doesn't kick in
- Log time when error occured, not when it is reported
- Swap sides: Require confirmation only after comparison
- Updated translation files
- Changes from 11.20
- Fixed broken icon scaling on high-DPI displays
- Fixed user language set to English after update
- Drop obsolete FreeFileSync-build-with-gcc12.patch
- Drop obsolete FreeFileSync-build-with-wx3.1.5.patch
- Update FreeFileSync-disable-in-app-updates.patch for version 11.23
- Update FreeFileSync-icon-loader.patch for version 11.23
- Update FreeFileSync-resources.patch for version 11.23
-------------------------------------------------------------------
Sat Jun 11 15:06:02 UTC 2022 - Jannik Seiler <seil0@mosad.xyz>
- Update to 11.19

View File

@ -17,7 +17,7 @@
Name: FreeFileSync
Version: 11.19
Version: 11.23
Release: 0
Summary: Backup software to synchronize files and folders
License: GPL-3.0-or-later
@ -34,9 +34,9 @@ Patch2: FreeFileSync-icon-loader.patch
Patch3: FreeFileSync-disable-in-app-updates.patch
Patch4: FreeFileSync-openssl-1.1.1.patch
# can be droped once wx 3.1.6 is available
Patch5: FreeFileSync-build-with-wx3.1.5.patch
#Patch5: FreeFileSync-build-with-wx3.1.5.patch
# can be droped with 11.21
Patch6: FreeFileSync-build-with-gcc12.patch
#Patch6: FreeFileSync-build-with-gcc12.patch
BuildRequires: boost-devel >= 1.54
BuildRequires: gcc-c++
BuildRequires: libcurl-devel

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ae4b61fb8108977da9c215403c3f8e958900376874e28f3c1b25f877b98015f2
size 2664327

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3e2602eea1224caf2dd9fb0d73f9e15248eeb749c7666231464c9f6bfa0ccb66
size 2651480