Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package filezilla for openSUSE:Factory checked in at 2021-01-20 18:28:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/filezilla (Old) and /work/SRC/openSUSE:Factory/.filezilla.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "filezilla" Wed Jan 20 18:28:05 2021 rev:90 rq:864587 version:3.52.2 Changes: -------- --- /work/SRC/openSUSE:Factory/filezilla/filezilla.changes 2021-01-11 17:15:43.280560960 +0100 +++ /work/SRC/openSUSE:Factory/.filezilla.new.28504/filezilla.changes 2021-01-20 18:28:32.971579609 +0100 @@ -1,0 +2,9 @@ +Wed Jan 20 07:55:54 UTC 2021 - ecsos <[email protected]> + +- Update to 3.52.2 + - When restoring the main window position at startup, detect if + the title bar would become hidden behind taskbars or global + menu bars and reposition it appropriately + - SFTP: Fixed preserving of timestamps on downloads + +------------------------------------------------------------------- Old: ---- FileZilla_3.52.0.5_src.tar.bz2 New: ---- FileZilla_3.52.2_src.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ filezilla.spec ++++++ --- /var/tmp/diff_new_pack.ozi9EZ/_old 2021-01-20 18:28:33.783580354 +0100 +++ /var/tmp/diff_new_pack.ozi9EZ/_new 2021-01-20 18:28:33.783580354 +0100 @@ -16,10 +16,10 @@ # -%define main_version 3.52.0 +%define main_version 3.52.2 Name: filezilla -Version: 3.52.0.5 +Version: 3.52.2 Release: 0 Summary: A GUI FTP and SFTP Client License: GPL-2.0-or-later ++++++ FileZilla_3.52.0.5_src.tar.bz2 -> FileZilla_3.52.2_src.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/NEWS new/filezilla-3.52.2/NEWS --- old/filezilla-3.52.0.5/NEWS 2021-01-08 11:41:34.000000000 +0100 +++ new/filezilla-3.52.2/NEWS 2021-01-18 14:46:32.000000000 +0100 @@ -10,6 +10,11 @@ *nix: Unix (e.g BSD) and Unix-like systems (e.g. Linux) macOS/OS X: Apple macOS +3.52.2 (2021-01-18) + +- When restoring the main window position at startup, detect if the title bar would become hidden behind taskbars or global menu bars and reposition it appropriately +- SFTP: Fixed preserving of timestamps on downloads + 3.52.0.5 (2021-01-08) - FTP: Fixed crash if downloading ASCII files with stray carriage returns diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/configure new/filezilla-3.52.2/configure --- old/filezilla-3.52.0.5/configure 2021-01-08 11:41:49.000000000 +0100 +++ new/filezilla-3.52.2/configure 2021-01-18 14:46:48.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for FileZilla 3.52.0.5. +# Generated by GNU Autoconf 2.69 for FileZilla 3.52.2. # # Report bugs to <[email protected]>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='FileZilla' PACKAGE_TARNAME='filezilla' -PACKAGE_VERSION='3.52.0.5' -PACKAGE_STRING='FileZilla 3.52.0.5' +PACKAGE_VERSION='3.52.2' +PACKAGE_STRING='FileZilla 3.52.2' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='https://filezilla-project.org/' @@ -1460,7 +1460,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures FileZilla 3.52.0.5 to adapt to many kinds of systems. +\`configure' configures FileZilla 3.52.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1531,7 +1531,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of FileZilla 3.52.0.5:";; + short | recursive ) echo "Configuration of FileZilla 3.52.2:";; esac cat <<\_ACEOF @@ -1707,7 +1707,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -FileZilla configure 3.52.0.5 +FileZilla configure 3.52.2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2372,7 +2372,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by FileZilla $as_me 3.52.0.5, which was +It was created by FileZilla $as_me 3.52.2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3238,7 +3238,7 @@ # Define the identity of the package. PACKAGE='filezilla' - VERSION='3.52.0.5' + VERSION='3.52.2' cat >>confdefs.h <<_ACEOF @@ -22797,7 +22797,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by FileZilla $as_me 3.52.0.5, which was +This file was extended by FileZilla $as_me 3.52.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22864,7 +22864,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -FileZilla config.status 3.52.0.5 +FileZilla config.status 3.52.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/configure.ac new/filezilla-3.52.2/configure.ac --- old/filezilla-3.52.0.5/configure.ac 2021-01-08 11:41:34.000000000 +0100 +++ new/filezilla-3.52.2/configure.ac 2021-01-18 14:46:32.000000000 +0100 @@ -1,4 +1,4 @@ -AC_INIT([FileZilla],[3.52.0.5],[[email protected]],[],[https://filezilla-project.org/]) +AC_INIT([FileZilla],[3.52.2],[[email protected]],[],[https://filezilla-project.org/]) AC_CONFIG_HEADERS([config/config.h]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_AUX_DIR(config) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/locales/filezilla.pot new/filezilla-3.52.2/locales/filezilla.pot --- old/filezilla-3.52.0.5/locales/filezilla.pot 2021-01-08 11:42:02.000000000 +0100 +++ new/filezilla-3.52.2/locales/filezilla.pot 2021-01-18 14:47:01.000000000 +0100 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: https://trac.filezilla-project.org/\n" -"POT-Creation-Date: 2021-01-08 11:42+0100\n" +"POT-Creation-Date: 2021-01-18 14:47+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <[email protected]>\n" @@ -2096,7 +2096,7 @@ msgid "Choose the local directory" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:784 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:785 msgid "Chunk data improperly terminated" msgstr "" @@ -2390,10 +2390,10 @@ msgstr "" #: ../../../source/FileZilla3/locales/../src/engine/ftp/ftpcontrolsocket.cpp:73 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:361 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:374 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:389 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:400 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:362 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:375 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:390 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:401 msgid "Connection closed by server" msgstr "" @@ -2493,8 +2493,8 @@ msgstr "" #: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:234 -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:423 -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:433 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:421 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:431 #: ../../../source/FileZilla3/locales/../src/engine/string_reader.cpp:27 #: ../../../source/FileZilla3/locales/../src/engine/string_reader.cpp:38 #: ../../../source/FileZilla3/locales/../src/engine/string_reader.cpp:111 @@ -2503,8 +2503,8 @@ msgid "Could not allocate memory to open '%s' for reading." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:331 -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:550 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:301 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:520 #, c-format msgid "Could not allocate memory to open '%s' for writing." msgstr "" @@ -2522,9 +2522,9 @@ msgid "Could not connect to server: %s" msgstr "" +#: ../../../source/FileZilla3/locales/../src/engine/sftp/sftpcontrolsocket.cpp:351 #: ../../../source/FileZilla3/locales/../src/engine/sftp/filetransfer.cpp:69 #: ../../../source/FileZilla3/locales/../src/engine/sftp/filetransfer.cpp:90 -#: ../../../source/FileZilla3/locales/../src/engine/sftp/sftpcontrolsocket.cpp:351 #: ../../../source/FileZilla3/locales/../src/engine/storj/storjcontrolsocket.cpp:228 msgid "Could not convert command to server encoding" msgstr "" @@ -2679,7 +2679,7 @@ msgid "Could not obtain size of '%s'" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:304 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:302 #, c-format msgid "Could not obtain size of '%s'." msgstr "" @@ -2694,7 +2694,7 @@ msgid "Could not open '%s' for reading." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:350 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:320 #, c-format msgid "Could not open '%s' for writing." msgstr "" @@ -2728,7 +2728,7 @@ msgid "Could not read from '%s'" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:363 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:361 #, c-format msgid "Could not read from '%s'." msgstr "" @@ -2738,7 +2738,7 @@ msgstr "" #: ../../../source/FileZilla3/locales/../src/engine/ftp/ftpcontrolsocket.cpp:62 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:447 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:448 #, c-format msgid "Could not read from socket: %s" msgstr "" @@ -2755,19 +2755,21 @@ msgid "Could not restore directory access" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:309 -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:467 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:307 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:463 +#: ../../../source/FileZilla3/locales/../src/engine/string_reader.cpp:72 +#: ../../../source/FileZilla3/locales/../src/engine/string_reader.cpp:155 #, c-format msgid "Could not seek to offset %d in '%s' of size %d." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:297 -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:357 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:295 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:327 #, c-format msgid "Could not seek to offset %d in '%s'." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:481 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:451 #, c-format msgid "Could not seek to offset %d within '%s'." msgstr "" @@ -2780,12 +2782,12 @@ msgid "Could not send command to fzstorj." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:321 +#: ../../../source/FileZilla3/locales/../src/engine/reader.cpp:319 #, c-format msgid "Could not spawn worker thread for reading '%s'." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:371 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:341 #, c-format msgid "Could not spawn worker thread for writing '%s'." msgstr "" @@ -2794,12 +2796,12 @@ msgid "Could not start transfer" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:450 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:420 #, c-format msgid "Could not sync '%s' to disk." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:361 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:331 #, c-format msgid "Could not truncate '%s' to offset %d." msgstr "" @@ -2846,7 +2848,7 @@ msgid "Could not write key file: %s" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:412 +#: ../../../source/FileZilla3/locales/../src/engine/writer.cpp:382 #, c-format msgid "Could not write to '%s'." msgstr "" @@ -4663,11 +4665,11 @@ msgstr "" #: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:175 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:686 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:687 msgid "Invalid Content-Length" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:565 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:566 msgid "Invalid HTTP Response" msgstr "" @@ -4677,7 +4679,7 @@ "site manager to force UTF-8." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:814 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:815 msgid "Invalid chunk size" msgstr "" @@ -4720,7 +4722,7 @@ msgid "Invalid input" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:593 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:594 msgid "Invalid line" msgstr "" @@ -4753,7 +4755,7 @@ msgid "Invalid regular expression" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:574 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:575 msgid "Invalid response code" msgstr "" @@ -4878,7 +4880,7 @@ msgid "Limit:" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:773 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:774 msgid "Line length exceeded" msgstr "" @@ -5031,11 +5033,11 @@ msgid "Make sure the file can be accessed and is a well-formed XML document." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:760 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:766 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:773 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:784 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:814 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:761 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:767 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:774 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:785 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:815 #, c-format msgid "Malformed chunk data: %s" msgstr "" @@ -5045,18 +5047,18 @@ msgid "Malformed request header: %s" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:534 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:540 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:593 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:649 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:686 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:535 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:541 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:594 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:650 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:687 #, c-format msgid "Malformed response header: %s" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:481 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:495 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:513 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:482 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:496 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:514 #, c-format msgid "Malformed response: %s" msgstr "" @@ -5407,8 +5409,8 @@ msgid "Note: Using a generic proxy forces passive mode on FTP connections." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:540 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:766 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:541 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:767 msgid "Null character in line" msgstr "" @@ -6933,7 +6935,7 @@ "Manager" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:534 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:535 msgid "Server not sending proper line endings" msgstr "" @@ -6957,7 +6959,7 @@ "login type." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:365 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:366 msgid "Server sent data even before request headers were sent" msgstr "" @@ -6971,9 +6973,9 @@ "instead." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:481 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:495 -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:513 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:482 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:496 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:514 msgid "Server sent too much data." msgstr "" @@ -7889,7 +7891,7 @@ msgid "Toggles the display of the transfer queue" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:547 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:548 msgid "Too long header line" msgstr "" @@ -8082,7 +8084,7 @@ "Unknown root element, the file does not appear to be generated by FileZilla." msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:649 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:650 msgid "Unknown transfer encoding" msgstr "" @@ -8408,7 +8410,7 @@ msgid "Wrong external IP address" msgstr "" -#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:760 +#: ../../../source/FileZilla3/locales/../src/engine/http/request.cpp:761 msgid "Wrong line endings" msgstr "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/aio.cpp new/filezilla-3.52.2/src/engine/aio.cpp --- old/filezilla-3.52.0.5/src/engine/aio.cpp 2021-01-08 11:41:34.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/aio.cpp 2021-01-16 05:30:02.000000000 +0100 @@ -91,7 +91,7 @@ return false; } - if (s.st_size < memory_size_) + if (s.st_size < 0 || static_cast<size_t>(s.st_size) < memory_size_) #endif { if (ftruncate(shm, memory_size_) != 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/http/httpcontrolsocket.h new/filezilla-3.52.2/src/engine/http/httpcontrolsocket.h --- old/filezilla-3.52.0.5/src/engine/http/httpcontrolsocket.h 2021-01-06 10:11:58.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/http/httpcontrolsocket.h 2021-01-16 05:30:02.000000000 +0100 @@ -109,7 +109,7 @@ bool got_code() const { return flags_ & flag_got_code; } bool got_header() const { return flags_ & flag_got_header; } - bool got_body() const { return flags_ & flag_got_body; } + bool got_body() const { return (flags_ & (flag_got_body | flag_no_body | flag_ignore_body)) == flag_got_body; } bool no_body() const { return flags_ & flag_no_body; } // Called once the complete header has been received. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/http/request.cpp new/filezilla-3.52.2/src/engine/http/request.cpp --- old/filezilla-3.52.0.5/src/engine/http/request.cpp 2020-12-22 05:30:02.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/http/request.cpp 2021-01-16 05:30:02.000000000 +0100 @@ -333,17 +333,18 @@ auto & shared_response = requests_.front(); if (shared_response) { auto & response = shared_response->response(); - response.flags_ |= HttpResponse::flag_got_body; - if (response.writer_) { - fz::nonowning_buffer b; - auto r = response.writer_->finalize(b); - switch (r) { - case aio_result::ok: - return FZ_REPLY_OK; - case aio_result::wait: - return FZ_REPLY_WOULDBLOCK; - default: - return FZ_REPLY_ERROR; + if (!(response.flags_ & (HttpResponse::flag_ignore_body | HttpResponse::flag_no_body))) { + response.flags_ |= HttpResponse::flag_got_body; + if (response.success() && response.writer_) { + auto r = response.writer_->finalize(read_state_.writer_buffer_); + switch (r) { + case aio_result::ok: + return FZ_REPLY_OK; + case aio_result::wait: + return FZ_REPLY_WOULDBLOCK; + default: + return FZ_REPLY_ERROR; + } } } } @@ -723,7 +724,7 @@ if (res == FZ_REPLY_CONTINUE) { if (!read_state_.responseContentLength_) { - res = FZ_REPLY_OK; + return FinalizeResponseBody(); } } @@ -839,18 +840,24 @@ if (response.success()) { if (response.writer_) { while (remaining) { - aio_result r = response.writer_->write(data, remaining); - if (r == aio_result::ok) { - remaining -= std::min(remaining, aio_base::buffer_size_); - } - else if (r == aio_result::wait) { - res = FZ_REPLY_WOULDBLOCK; - break; - } - else { - res = FZ_REPLY_ERROR; - break; + if (read_state_.writer_buffer_.size() >= read_state_.writer_buffer_.capacity()) { + auto r = response.writer_->get_write_buffer(read_state_.writer_buffer_); + if (r == aio_result::wait) { + res = FZ_REPLY_WOULDBLOCK; + break; + } + else if (r == aio_result::error) { + res = FZ_REPLY_CRITICALERROR; + break; + } + + read_state_.writer_buffer_ = r.buffer_; } + + size_t s = std::min(remaining, read_state_.writer_buffer_.capacity() - read_state_.writer_buffer_.size()); + read_state_.writer_buffer_.append(data, s); + data += s; + remaining -= s; } } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/http/request.h new/filezilla-3.52.2/src/engine/http/request.h --- old/filezilla-3.52.0.5/src/engine/http/request.h 2020-11-28 05:30:03.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/http/request.h 2021-01-12 05:30:03.000000000 +0100 @@ -75,6 +75,8 @@ int64_t responseContentLength_{-1}; int64_t receivedData_{}; + fz::nonowning_buffer writer_buffer_; + bool keep_alive_{}; bool eof_{}; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/reader.cpp new/filezilla-3.52.2/src/engine/reader.cpp --- old/filezilla-3.52.0.5/src/engine/reader.cpp 2020-12-17 05:30:03.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/reader.cpp 2021-01-12 05:30:03.000000000 +0100 @@ -261,7 +261,7 @@ if (offset != start_offset_) { change = true; } - if (max_size != aio_base::nosize && max_size != size_) { + if (max_size != max_size_) { change = true; } } @@ -287,9 +287,7 @@ if (offset != aio_base::nosize) { start_offset_ = offset; - } - else { - max_size = aio_base::nosize; + max_size_ = max_size; } auto const ofs = static_cast<int64_t>(start_offset_); @@ -311,8 +309,8 @@ return aio_result::error; } size_ = static_cast<int64_t>(s) - start_offset_; - if (max_size != aio_base::nosize && max_size < size_) { - size_ = max_size; + if (max_size_ != aio_base::nosize && max_size_ < size_) { + size_ = max_size_; } remaining_ = size_; @@ -458,9 +456,7 @@ { if (offset != aio_base::nosize) { start_offset_ = offset; - } - else { - max_size = size_; + max_size_ = max_size; } if (start_offset_ > start_data_.size()) { @@ -469,9 +465,9 @@ return aio_result::error; } size_ = start_data_.size() - start_offset_; - if (max_size != aio_base::nosize) { - if (max_size < size_) { - size_ = max_size; + if (max_size_ != aio_base::nosize) { + if (max_size_ < size_) { + size_ = max_size_; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/sftp/filetransfer.cpp new/filezilla-3.52.2/src/engine/sftp/filetransfer.cpp --- old/filezilla-3.52.0.5/src/engine/sftp/filetransfer.cpp 2020-12-17 05:30:03.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/sftp/filetransfer.cpp 2021-01-18 14:46:32.000000000 +0100 @@ -128,6 +128,7 @@ int CSftpFileTransferOpData::ParseResponse() { if (opState == filetransfer_transfer) { + writer_.reset(); if (controlSocket_.result_ == FZ_REPLY_OK && engine_.GetOptions().get_int(OPTION_PRESERVE_TIMESTAMPS)) { if (download()) { if (!remoteFileTime_.empty()) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/string_reader.cpp new/filezilla-3.52.2/src/engine/string_reader.cpp --- old/filezilla-3.52.0.5/src/engine/string_reader.cpp 2020-12-17 14:50:15.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/string_reader.cpp 2021-01-12 05:30:03.000000000 +0100 @@ -65,19 +65,19 @@ { if (offset != aio_base::nosize) { start_offset_ = offset; + max_size_ = max_size; } if (start_offset_ > start_data_.size()) { + engine_.GetLogger().log(logmsg::error, fztranslate("Could not seek to offset %d in '%s' of size %d."), start_offset_, name_, start_data_.size()); error_ = true; return aio_result::error; } size_ = start_data_.size() - start_offset_; - if (max_size != aio_base::nosize) { - if (max_size > size_) { - error_ = true; - return aio_result::error; + if (max_size_ != aio_base::nosize) { + if (max_size_ < size_) { + size_ = max_size_; } - size_ = max_size; } data_ = start_data_; @@ -148,19 +148,19 @@ { if (offset != aio_base::nosize) { start_offset_ = offset; + max_size_ = max_size; } if (start_offset_ > start_data_.size()) { + engine_.GetLogger().log(logmsg::error, fztranslate("Could not seek to offset %d in '%s' of size %d."), start_offset_, name_, start_data_.size()); error_ = true; return aio_result::error; } size_ = start_data_.size() - start_offset_; - if (max_size != aio_base::nosize) { - if (max_size > size_) { - error_ = true; - return aio_result::error; + if (max_size_ != aio_base::nosize) { + if (max_size_ < size_) { + size_ = max_size_; } - size_ = max_size; } data_ = std::string_view(reinterpret_cast<char const*>(start_data_.get() + start_offset_), size_); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/engine/writer.cpp new/filezilla-3.52.2/src/engine/writer.cpp --- old/filezilla-3.52.0.5/src/engine/writer.cpp 2020-12-17 05:30:03.000000000 +0100 +++ new/filezilla-3.52.2/src/engine/writer.cpp 2021-01-12 05:30:03.000000000 +0100 @@ -205,36 +205,6 @@ return aio_result::ok; } -aio_result writer_base::write(uint8_t* data, size_t len) -{ - fz::scoped_lock l(mtx_); - if (error_ || processing_) { - return aio_result::error; - } - - if (!len) { - return aio_result::ok; - } - - if (ready_count_ >= buffers_.size()) { - handler_waiting_ = true; - return aio_result::wait; - } - - auto & b = buffers_[(ready_pos_ + ready_count_) % buffers_.size()]; - - len = std::min(len, buffer_size_); - memcpy(b.get(len), data, len); - b.add(len); - - bool signal = !ready_count_; - ++ready_count_; - if (signal) { - signal_capacity(l); - } - return aio_result::ok; -} - aio_result writer_base::finalize(fz::nonowning_buffer & last_written) { fz::scoped_lock l(mtx_); @@ -574,6 +544,7 @@ engine_.transfer_status_.SetMadeProgress(); engine_.transfer_status_.Update(b.size()); } + b.resize(0); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/include/reader.h new/filezilla-3.52.2/src/include/reader.h --- old/filezilla-3.52.0.5/src/include/reader.h 2020-12-17 05:30:03.000000000 +0100 +++ new/filezilla-3.52.2/src/include/reader.h 2021-01-12 05:30:03.000000000 +0100 @@ -108,6 +108,7 @@ protected: uint64_t start_offset_{}; + uint64_t max_size_{aio_base::nosize}; uint64_t size_{aio_base::nosize}; bool called_read_{}; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/include/writer.h new/filezilla-3.52.2/src/include/writer.h --- old/filezilla-3.52.0.5/src/include/writer.h 2020-12-17 14:50:15.000000000 +0100 +++ new/filezilla-3.52.2/src/include/writer.h 2021-01-12 05:30:03.000000000 +0100 @@ -82,7 +82,7 @@ { public: file_writer_factory(std::wstring const& file, bool fsync = false); - + virtual std::unique_ptr<writer_base> open(uint64_t offset, CFileZillaEnginePrivate & engine, fz::event_handler * handler, aio_base::shm_flag shm, bool update_transfer_status = true) override; virtual std::unique_ptr<writer_factory> clone() const override; @@ -97,6 +97,7 @@ struct get_write_buffer_result { bool operator==(aio_result const t) const { return type_ == t; } + bool operator!=(aio_result const t) const { return type_ != t; } aio_result type_{aio_result::error}; fz::nonowning_buffer buffer_; @@ -117,9 +118,6 @@ virtual aio_result retire(fz::nonowning_buffer & last_written); - // Writes _up to_ aio_base::buffer_size_ bytes. - virtual aio_result write(uint8_t* data, size_t len); - virtual aio_result preallocate(uint64_t /*size*/) { return aio_result::ok; } void set_handler(fz::event_handler * handler); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/interface/serverdata.cpp new/filezilla-3.52.2/src/interface/serverdata.cpp --- old/filezilla-3.52.0.5/src/interface/serverdata.cpp 2020-10-20 05:30:03.000000000 +0200 +++ new/filezilla-3.52.2/src/interface/serverdata.cpp 2021-01-12 05:30:03.000000000 +0100 @@ -402,13 +402,13 @@ } // Different key used. Try decrypting it - auto priv = CLoginManager::Get().GetDecryptor(key); + auto priv = CLoginManager::Get().GetDecryptor(encrypted_); if (!priv || !Unprotect(priv, true)) { return; } // It succeeded, continue encrypting it with new key. } - + auto plain = fz::to_utf8(password_); if (plain.size() < 16) { // Primitive length hiding diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/filezilla-3.52.0.5/src/interface/window_state_manager.cpp new/filezilla-3.52.2/src/interface/window_state_manager.cpp --- old/filezilla-3.52.0.5/src/interface/window_state_manager.cpp 2020-06-18 16:06:46.000000000 +0200 +++ new/filezilla-3.52.2/src/interface/window_state_manager.cpp 2021-01-18 12:11:19.000000000 +0100 @@ -93,6 +93,28 @@ position.y = screen_size.GetTop(); } +#if wxUSE_DISPLAY + // In a second step, adjust vertical again, but this time based on the screen at the assumed centerpoint of the titlebar + wxPoint title_center = wxPoint(position.x + size.x / 2, position.y + 4); + int const di = wxDisplay::GetFromPoint(title_center); + if (di != wxNOT_FOUND) { + wxDisplay d(di); + if (d.IsOk()) { + wxRect const dr = d.GetClientArea(); + + int dy = position.y - dr.GetTop(); + if (dy > -100 && dy < 0) { + position.y = dr.GetTop(); + } + + dy = (dr.GetBottom() - 30) - position.y; + if (dy > -100 && dy < 0) { + position.y = dr.GetBottom() - 30; + } + } + } +#endif + maximized = values[0] != 0; return true; @@ -194,7 +216,7 @@ // Get bounding rectangle of virtual screen for (unsigned int i = 0; i < wxDisplay::GetCount(); ++i) { wxDisplay display(i); - wxRect rect = display.GetGeometry(); + wxRect rect = display.GetClientArea(); screen_size.Union(rect); } if (screen_size.GetWidth() <= 0 || screen_size.GetHeight() <= 0) {
