Hello community,

here is the log from the commit of package libsoup for openSUSE:Factory checked 
in at 2020-03-03 10:14:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libsoup (Old)
 and      /work/SRC/openSUSE:Factory/.libsoup.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libsoup"

Tue Mar  3 10:14:25 2020 rev:122 rq:780396 version:2.68.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/libsoup/libsoup.changes  2020-01-28 
10:52:10.120819996 +0100
+++ /work/SRC/openSUSE:Factory/.libsoup.new.26092/libsoup.changes       
2020-03-03 10:14:29.978434276 +0100
@@ -1,0 +2,9 @@
+Wed Feb 26 08:57:50 UTC 2020 - Bjørn Lie <[email protected]>
+
+- Update to version 2.68.4:
+  + WebSockets:
+    - Ensure a new connection is created for WebSocket requests.
+    - Do not start the input source when IO is closing.
+  + build: Update glib requirement to 2.58.
+
+-------------------------------------------------------------------

Old:
----
  libsoup-2.68.3.tar.xz

New:
----
  libsoup-2.68.4.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libsoup.spec ++++++
--- /var/tmp/diff_new_pack.EzgCTs/_old  2020-03-03 10:14:30.734435840 +0100
+++ /var/tmp/diff_new_pack.EzgCTs/_new  2020-03-03 10:14:30.734435840 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libsoup
 #
-# Copyright (c) 2019 SUSE LLC
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           libsoup
-Version:        2.68.3
+Version:        2.68.4
 Release:        0
 Summary:        HTTP client/server library for GNOME
 License:        LGPL-2.1-or-later
@@ -32,9 +32,9 @@
 BuildRequires:  meson >= 0.50
 BuildRequires:  pkgconfig
 BuildRequires:  translation-update-upstream
-BuildRequires:  pkgconfig(gio-2.0) >= 2.38.0
+BuildRequires:  pkgconfig(gio-2.0) >= 2.58.0
 BuildRequires:  pkgconfig(glib-2.0) >= 2.58.0
-BuildRequires:  pkgconfig(gobject-2.0) >= 2.38.0
+BuildRequires:  pkgconfig(gobject-2.0) >= 2.58.0
 BuildRequires:  pkgconfig(gobject-introspection-1.0) >= 0.9.5
 BuildRequires:  pkgconfig(gtk-doc) >= 1.20
 BuildRequires:  pkgconfig(krb5)

++++++ libsoup-2.68.3.tar.xz -> libsoup-2.68.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/NEWS new/libsoup-2.68.4/NEWS
--- old/libsoup-2.68.3/NEWS     2019-12-04 11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/NEWS     2020-02-26 00:57:19.838775400 +0100
@@ -1,3 +1,13 @@
+Changes in libsoup from 2.68.3 to 2.68.4:
+
+       * WebSockets: Ensure a new connection is created for WebSocket requests 
[Carlos
+         Garcia Campos]
+
+       * WebSockets: Do not start the input source when IO is closing [Carlos 
Garcia
+         Campos]
+
+       * build: Update glib requirement to 2.58 [Xavier Claessens]
+
 Changes in libsoup from 2.68.2 to 2.68.3:
 
         * Fixes to testing infrastructure [Simon McVittie]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-address.c 
new/libsoup-2.68.4/libsoup/soup-address.c
--- old/libsoup-2.68.3/libsoup/soup-address.c   2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-address.c   2020-02-26 00:57:19.842108700 
+0100
@@ -268,7 +268,8 @@
                                     "Name",
                                     "Hostname for this address",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_ADDRESS_FAMILY:
         *
@@ -282,7 +283,8 @@
                                   "Address family for this address",
                                   SOUP_TYPE_ADDRESS_FAMILY,
                                   SOUP_ADDRESS_FAMILY_INVALID,
-                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
+                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                  G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_ADDRESS_PORT:
         *
@@ -295,7 +297,8 @@
                                  "Port",
                                  "Port for this address",
                                  -1, 65535, -1,
-                                 G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
+                                 G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                 G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_ADDRESS_PROTOCOL:
         *
@@ -308,7 +311,8 @@
                                     "Protocol",
                                     "URI scheme for this address",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_ADDRESS_PHYSICAL:
         *
@@ -321,7 +325,8 @@
                                     "Physical address",
                                     "IP address for this address",
                                     NULL,
-                                    G_PARAM_READABLE));
+                                    G_PARAM_READABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_ADDRESS_SOCKADDR:
         *
@@ -333,7 +338,8 @@
                g_param_spec_pointer (SOUP_ADDRESS_SOCKADDR,
                                      "sockaddr",
                                      "struct sockaddr for this address",
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-auth-domain-basic.c 
new/libsoup-2.68.4/libsoup/soup-auth-domain-basic.c
--- old/libsoup-2.68.3/libsoup/soup-auth-domain-basic.c 2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-auth-domain-basic.c 2020-02-26 
00:57:19.842108700 +0100
@@ -321,7 +321,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK,
                                      "Authentication callback",
                                      "Password-checking callback",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA:
         *
@@ -338,5 +339,6 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA,
                                      "Authentication callback data",
                                      "Data to pass to authentication callback",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-auth-domain-digest.c 
new/libsoup-2.68.4/libsoup/soup-auth-domain-digest.c
--- old/libsoup-2.68.3/libsoup/soup-auth-domain-digest.c        2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-auth-domain-digest.c        2020-02-26 
00:57:19.842108700 +0100
@@ -427,7 +427,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK,
                                      "Authentication callback",
                                      "Password-finding callback",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA:
         *
@@ -444,5 +445,6 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA,
                                      "Authentication callback data",
                                      "Data to pass to authentication callback",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-auth-domain.c 
new/libsoup-2.68.4/libsoup/soup-auth-domain.c
--- old/libsoup-2.68.3/libsoup/soup-auth-domain.c       2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-auth-domain.c       2020-02-26 
00:57:19.842108700 +0100
@@ -196,7 +196,8 @@
                                     "Realm",
                                     "The realm of this auth domain",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_PROXY:
         *
@@ -209,7 +210,8 @@
                                      "Proxy",
                                      "Whether or not this is a proxy auth 
domain",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_ADD_PATH:
         *
@@ -222,7 +224,8 @@
                                     "Add a path",
                                     "Add a path covered by this auth domain",
                                     NULL,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_REMOVE_PATH:
         *
@@ -235,7 +238,8 @@
                                     "Remove a path",
                                     "Remove a path covered by this auth 
domain",
                                     NULL,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_FILTER:
         *
@@ -252,7 +256,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_FILTER,
                                      "Filter",
                                      "A filter for deciding whether or not to 
require authentication",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_FILTER_DATA:
         *
@@ -269,7 +274,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_FILTER_DATA,
                                      "Filter data",
                                      "Data to pass to filter",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_GENERIC_AUTH_CALLBACK:
         *
@@ -281,7 +287,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_GENERIC_AUTH_CALLBACK,
                                      "Generic authentication callback",
                                      "An authentication callback that can be 
used with any SoupAuthDomain subclass",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_DOMAIN_GENERIC_AUTH_DATA:
         *
@@ -293,7 +300,8 @@
                g_param_spec_pointer (SOUP_AUTH_DOMAIN_GENERIC_AUTH_DATA,
                                      "Authentication callback data",
                                      "Data to pass to auth callback",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-auth.c 
new/libsoup-2.68.4/libsoup/soup-auth.c
--- old/libsoup-2.68.3/libsoup/soup-auth.c      2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-auth.c      2020-02-26 00:57:19.842108700 
+0100
@@ -154,7 +154,8 @@
                                     "Scheme name",
                                     "Authentication scheme name",
                                     NULL,
-                                    G_PARAM_READABLE));
+                                    G_PARAM_READABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_REALM:
         *
@@ -167,7 +168,8 @@
                                     "Realm",
                                     "Authentication realm",
                                     NULL,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_HOST:
         *
@@ -180,7 +182,8 @@
                                     "Host",
                                     "Authentication host",
                                     NULL,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_IS_FOR_PROXY:
         *
@@ -193,7 +196,8 @@
                                      "For Proxy",
                                      "Whether or not the auth is for a proxy 
server",
                                      FALSE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_AUTH_IS_AUTHENTICATED:
         *
@@ -206,7 +210,8 @@
                                      "Authenticated",
                                      "Whether or not the auth is 
authenticated",
                                      FALSE,
-                                     G_PARAM_READABLE));
+                                     G_PARAM_READABLE |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-body-input-stream.c 
new/libsoup-2.68.4/libsoup/soup-body-input-stream.c
--- old/libsoup-2.68.3/libsoup/soup-body-input-stream.c 2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-body-input-stream.c 2020-02-26 
00:57:19.845442000 +0100
@@ -391,14 +391,14 @@
                                   "Message body encoding",
                                   SOUP_TYPE_ENCODING,
                                   SOUP_ENCODING_NONE,
-                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
+                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | 
G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_CONTENT_LENGTH,
                g_param_spec_int64 ("content-length",
                                    "Content-Length",
                                    "Message body Content-Length",
                                    -1, G_MAXINT64, -1,
-                                   G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
+                                   G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY | 
G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-body-output-stream.c 
new/libsoup-2.68.4/libsoup/soup-body-output-stream.c
--- old/libsoup-2.68.3/libsoup/soup-body-output-stream.c        2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-body-output-stream.c        2020-02-26 
00:57:19.845442000 +0100
@@ -307,14 +307,16 @@
                                   "Message body encoding",
                                   SOUP_TYPE_ENCODING,
                                   SOUP_ENCODING_NONE,
-                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
+                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                  G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_CONTENT_LENGTH,
                g_param_spec_uint64 ("content-length",
                                     "Content-Length",
                                     "Message body Content-Length",
                                     0, G_MAXUINT64, 0,
-                                    G_PARAM_WRITABLE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY |
+                                    G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-cache.c 
new/libsoup-2.68.4/libsoup/soup-cache.c
--- old/libsoup-2.68.3/libsoup/soup-cache.c     2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-cache.c     2020-02-26 00:57:19.845442000 
+0100
@@ -1008,7 +1008,8 @@
                                                              "Cache directory",
                                                              "The directory to 
store the cache files",
                                                              NULL,
-                                                             G_PARAM_READWRITE 
| G_PARAM_CONSTRUCT_ONLY));
+                                                             G_PARAM_READWRITE 
| G_PARAM_CONSTRUCT_ONLY |
+                                                             
G_PARAM_STATIC_STRINGS));
 
        g_object_class_install_property (gobject_class, PROP_CACHE_TYPE,
                                         g_param_spec_enum ("cache-type",
@@ -1016,7 +1017,8 @@
                                                            "Whether the cache 
is private or shared",
                                                            
SOUP_TYPE_CACHE_TYPE,
                                                            
SOUP_CACHE_SINGLE_USER,
-                                                           G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                                           G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                                           
G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-client-input-stream.c 
new/libsoup-2.68.4/libsoup/soup-client-input-stream.c
--- old/libsoup-2.68.3/libsoup/soup-client-input-stream.c       2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-client-input-stream.c       2020-02-26 
00:57:19.845442000 +0100
@@ -238,7 +238,8 @@
                                     "Message",
                                     "Message",
                                     SOUP_TYPE_MESSAGE,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-connection.c 
new/libsoup-2.68.4/libsoup/soup-connection.c
--- old/libsoup-2.68.3/libsoup/soup-connection.c        2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-connection.c        2020-02-26 
00:57:19.845442000 +0100
@@ -179,27 +179,31 @@
                                    "Remote URI",
                                    "The URI of the HTTP server",
                                    SOUP_TYPE_URI,
-                                   G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                   G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                   G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_SOCKET_PROPERTIES,
                g_param_spec_boxed (SOUP_CONNECTION_SOCKET_PROPERTIES,
                                    "Socket properties",
                                    "Socket properties",
                                    SOUP_TYPE_SOCKET_PROPERTIES,
-                                   G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                   G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                   G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_STATE,
                g_param_spec_enum (SOUP_CONNECTION_STATE,
                                   "Connection state",
                                   "Current state of connection",
                                   SOUP_TYPE_CONNECTION_STATE, 
SOUP_CONNECTION_NEW,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_SSL,
                g_param_spec_boolean (SOUP_CONNECTION_SSL,
                                      "Connection uses TLS",
                                      "Whether the connection should use TLS",
-                                     FALSE, G_PARAM_READWRITE));
+                                     FALSE,G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-content-sniffer-stream.c 
new/libsoup-2.68.4/libsoup/soup-content-sniffer-stream.c
--- old/libsoup-2.68.3/libsoup/soup-content-sniffer-stream.c    2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-content-sniffer-stream.c    2020-02-26 
00:57:19.845442000 +0100
@@ -314,14 +314,14 @@
                                     "Sniffer",
                                     "The stream's SoupContentSniffer",
                                     SOUP_TYPE_CONTENT_SNIFFER,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
| G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_MESSAGE,
                g_param_spec_object ("message",
                                     "Message",
                                     "The stream's SoupMessage",
                                     SOUP_TYPE_MESSAGE,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
| G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-cookie-jar-db.c 
new/libsoup-2.68.4/libsoup/soup-cookie-jar-db.c
--- old/libsoup-2.68.3/libsoup/soup-cookie-jar-db.c     2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-cookie-jar-db.c     2020-02-26 
00:57:19.845442000 +0100
@@ -329,5 +329,6 @@
                                     "Filename",
                                     "Cookie-storage filename",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-cookie-jar-text.c 
new/libsoup-2.68.4/libsoup/soup-cookie-jar-text.c
--- old/libsoup-2.68.3/libsoup/soup-cookie-jar-text.c   2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-cookie-jar-text.c   2020-02-26 
00:57:19.848775400 +0100
@@ -356,5 +356,6 @@
                                     "Filename",
                                     "Cookie-storage filename",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-cookie-jar.c 
new/libsoup-2.68.4/libsoup/soup-cookie-jar.c
--- old/libsoup-2.68.3/libsoup/soup-cookie-jar.c        2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-cookie-jar.c        2020-02-26 
00:57:19.848775400 +0100
@@ -192,7 +192,8 @@
                                      "Read-only",
                                      "Whether or not the cookie jar is 
read-only",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_COOKIE_JAR_ACCEPT_POLICY:
@@ -215,7 +216,8 @@
                                   "The policy the jar should follow to accept 
or reject cookies",
                                   SOUP_TYPE_COOKIE_JAR_ACCEPT_POLICY,
                                   SOUP_COOKIE_JAR_ACCEPT_ALWAYS,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-date.c 
new/libsoup-2.68.4/libsoup/soup-date.c
--- old/libsoup-2.68.3/libsoup/soup-date.c      2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-date.c      2020-02-26 00:57:19.848775400 
+0100
@@ -760,7 +760,7 @@
        g_return_val_if_fail (date != NULL, TRUE);
 
        /* optimization */
-       if (date->year < 2010)
+       if (date->year < 2020)
                return TRUE;
 
        return soup_date_to_time_t (date) < time (NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-hsts-enforcer-db.c 
new/libsoup-2.68.4/libsoup/soup-hsts-enforcer-db.c
--- old/libsoup-2.68.3/libsoup/soup-hsts-enforcer-db.c  2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-hsts-enforcer-db.c  2020-02-26 
00:57:19.848775400 +0100
@@ -333,5 +333,6 @@
                                     "Filename",
                                     "HSTS policy storage filename",
                                     NULL,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-io-stream.c 
new/libsoup-2.68.4/libsoup/soup-io-stream.c
--- old/libsoup-2.68.3/libsoup/soup-io-stream.c 2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-io-stream.c 2020-02-26 00:57:19.848775400 
+0100
@@ -197,7 +197,8 @@
                                     "Base GIOStream",
                                     G_TYPE_IO_STREAM,
                                     G_PARAM_READWRITE |
-                                    G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_CONSTRUCT_ONLY |
+                                    G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_CLOSE_ON_DISPOSE,
                g_param_spec_boolean ("close-on-dispose",
@@ -205,7 +206,8 @@
                                      "Close base GIOStream when closing",
                                      TRUE,
                                      G_PARAM_READWRITE |
-                                     G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 GIOStream *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-logger.c 
new/libsoup-2.68.4/libsoup/soup-logger.c
--- old/libsoup-2.68.3/libsoup/soup-logger.c    2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-logger.c    2020-02-26 00:57:19.848775400 
+0100
@@ -232,7 +232,8 @@
                                    "The level of logging output",
                                    SOUP_TYPE_LOGGER_LOG_LEVEL,
                                    SOUP_LOGGER_LOG_MINIMAL,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupLogger:max-body-size:
@@ -258,7 +259,8 @@
                                    -1,
                                    G_MAXINT,
                                    -1,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-message.c 
new/libsoup-2.68.4/libsoup/soup-message.c
--- old/libsoup-2.68.3/libsoup/soup-message.c   2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-message.c   2020-02-26 00:57:19.852108500 
+0100
@@ -698,7 +698,8 @@
                                     "Method",
                                     "The message's HTTP method",
                                     SOUP_METHOD_GET,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_URI:
         *
@@ -711,7 +712,8 @@
                                    "URI",
                                    "The message's Request-URI",
                                    SOUP_TYPE_URI,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_HTTP_VERSION:
         *
@@ -725,7 +727,8 @@
                                   "The HTTP protocol version to use",
                                   SOUP_TYPE_HTTP_VERSION,
                                   SOUP_HTTP_1_1,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_FLAGS:
         *
@@ -739,7 +742,8 @@
                                    "Various message options",
                                    SOUP_TYPE_MESSAGE_FLAGS,
                                    0,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_SERVER_SIDE:
         *
@@ -752,7 +756,8 @@
                                      "Server-side",
                                      "Whether or not the message is 
server-side rather than client-side",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_STATUS_CODE:
         *
@@ -765,7 +770,8 @@
                                   "Status code",
                                   "The HTTP response status code",
                                   0, 999, 0,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_REASON_PHRASE:
         *
@@ -778,7 +784,8 @@
                                     "Reason phrase",
                                     "The HTTP response reason phrase",
                                     NULL,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_FIRST_PARTY:
         *
@@ -802,7 +809,8 @@
                                    "First party",
                                    "The URI loaded in the application when the 
message was requested.",
                                    SOUP_TYPE_URI,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_REQUEST_BODY:
         *
@@ -815,7 +823,8 @@
                                    "Request Body",
                                    "The HTTP request content",
                                    SOUP_TYPE_MESSAGE_BODY,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_REQUEST_BODY_DATA:
         *
@@ -837,7 +846,8 @@
                                    "Request Body Data",
                                    "The HTTP request body",
                                    G_TYPE_BYTES,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_REQUEST_HEADERS:
         *
@@ -850,7 +860,8 @@
                                    "Request Headers",
                                    "The HTTP request headers",
                                    SOUP_TYPE_MESSAGE_HEADERS,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_RESPONSE_BODY:
         *
@@ -863,7 +874,8 @@
                                    "Response Body",
                                    "The HTTP response content",
                                    SOUP_TYPE_MESSAGE_BODY,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_RESPONSE_BODY_DATA:
         *
@@ -885,7 +897,8 @@
                                    "Response Body Data",
                                    "The HTTP response body",
                                    G_TYPE_BYTES,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_RESPONSE_HEADERS:
         *
@@ -898,7 +911,8 @@
                                    "Response Headers",
                                     "The HTTP response headers",
                                    SOUP_TYPE_MESSAGE_HEADERS,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_TLS_CERTIFICATE:
         *
@@ -920,7 +934,8 @@
                                     "TLS Certificate",
                                     "The TLS certificate associated with the 
message",
                                     G_TYPE_TLS_CERTIFICATE,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_TLS_ERRORS:
         *
@@ -942,7 +957,8 @@
                                    "TLS Errors",
                                    "The verification errors on the message's 
TLS certificate",
                                    G_TYPE_TLS_CERTIFICATE_FLAGS, 0,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_MESSAGE_PRIORITY:
         *
@@ -958,7 +974,8 @@
                                   "The priority of the message",
                                   SOUP_TYPE_MESSAGE_PRIORITY,
                                   SOUP_MESSAGE_PRIORITY_NORMAL,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
 }
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-multipart-input-stream.c 
new/libsoup-2.68.4/libsoup/soup-multipart-input-stream.c
--- old/libsoup-2.68.3/libsoup/soup-multipart-input-stream.c    2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-multipart-input-stream.c    2020-02-26 
00:57:19.852108500 +0100
@@ -303,7 +303,8 @@
                                     "Message",
                                     "The SoupMessage",
                                     SOUP_TYPE_MESSAGE,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-proxy-resolver-default.c 
new/libsoup-2.68.4/libsoup/soup-proxy-resolver-default.c
--- old/libsoup-2.68.3/libsoup/soup-proxy-resolver-default.c    2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-proxy-resolver-default.c    2020-02-26 
00:57:19.852108500 +0100
@@ -114,7 +114,8 @@
                                     "GProxyResolver",
                                     "The underlying GProxyResolver",
                                     G_TYPE_PROXY_RESOLVER,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE |
+                                    G_PARAM_STATIC_STRINGS));
 }
 
 typedef struct {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-request.c 
new/libsoup-2.68.4/libsoup/soup-request.c
--- old/libsoup-2.68.3/libsoup/soup-request.c   2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-request.c   2020-02-26 00:57:19.855441800 
+0100
@@ -300,7 +300,8 @@
                                     "URI",
                                     "The request URI",
                                     SOUP_TYPE_URI,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_REQUEST_SESSION:
         *
@@ -321,7 +322,8 @@
                                      "Session",
                                      "The request's session",
                                      SOUP_TYPE_SESSION,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-server.c 
new/libsoup-2.68.4/libsoup/soup-server.c
--- old/libsoup-2.68.3/libsoup/soup-server.c    2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-server.c    2020-02-26 00:57:19.855441800 
+0100
@@ -686,6 +686,7 @@
                                   0, 65536, 0,
                                   G_PARAM_READWRITE |
                                   G_PARAM_CONSTRUCT_ONLY |
+                                  G_PARAM_STATIC_STRINGS |
                                   G_PARAM_DEPRECATED));
        /**
         * SoupServer:interface:
@@ -718,6 +719,7 @@
                                     SOUP_TYPE_ADDRESS,
                                     G_PARAM_READWRITE |
                                     G_PARAM_CONSTRUCT_ONLY |
+                                    G_PARAM_STATIC_STRINGS |
                                     G_PARAM_DEPRECATED));
        /**
         * SOUP_SERVER_SSL_CERT_FILE:
@@ -749,7 +751,8 @@
                                     "File containing server TLS (aka SSL) 
certificate",
                                     NULL,
                                     G_PARAM_READWRITE |
-                                    G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_CONSTRUCT_ONLY |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SERVER_SSL_KEY_FILE:
         *
@@ -775,7 +778,8 @@
                                     "File containing server TLS (aka SSL) key",
                                     NULL,
                                     G_PARAM_READWRITE |
-                                    G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_CONSTRUCT_ONLY |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SERVER_TLS_CERTIFICATE:
         *
@@ -801,7 +805,7 @@
                                     "TLS certificate",
                                     "GTlsCertificate to use for https",
                                     G_TYPE_TLS_CERTIFICATE,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
| G_PARAM_STATIC_STRINGS));
        /**
         * SoupServer:async-context:
         *
@@ -829,6 +833,7 @@
                                      "The GMainContext to dispatch async I/O 
in",
                                      G_PARAM_READWRITE |
                                      G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS |
                                      G_PARAM_DEPRECATED));
        /**
         * SOUP_SERVER_RAW_PATHS:
@@ -843,7 +848,7 @@
                                      "Raw paths",
                                      "If %TRUE, percent-encoding in the 
Request-URI path will not be automatically decoded.",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupServer:server-header:
@@ -884,7 +889,7 @@
                                     "Server header",
                                     "Server header",
                                     NULL,
-                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT | 
G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupServer:http-aliases:
@@ -920,7 +925,7 @@
                                    "http aliases",
                                    "URI schemes that are considered aliases 
for 'http'",
                                    G_TYPE_STRV,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE | 
G_PARAM_STATIC_STRINGS));
        /**
         * SoupServer:https-aliases:
         *
@@ -946,7 +951,7 @@
                                    "https aliases",
                                    "URI schemes that are considered aliases 
for 'https'",
                                    G_TYPE_STRV,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE | 
G_PARAM_STATIC_STRINGS));
 
         /**
          * SoupServer:add-websocket-extension: (skip)
@@ -969,7 +974,7 @@
                                     "Add support for a WebSocket extension",
                                     "Add support for a WebSocket extension of 
the given type",
                                     SOUP_TYPE_WEBSOCKET_EXTENSION,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE | 
G_PARAM_STATIC_STRINGS));
         /**
          * SoupServer:remove-websocket-extension: (skip)
          *
@@ -991,7 +996,7 @@
                                     "Remove support for a WebSocket extension",
                                     "Remove support for a WebSocket extension 
of the given type",
                                     SOUP_TYPE_WEBSOCKET_EXTENSION,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE | 
G_PARAM_STATIC_STRINGS));
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-session.c 
new/libsoup-2.68.4/libsoup/soup-session.c
--- old/libsoup-2.68.3/libsoup/soup-session.c   2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-session.c   2020-02-26 00:57:19.855441800 
+0100
@@ -3229,7 +3229,8 @@
                                    "Proxy URI",
                                    "The HTTP Proxy to use for this session",
                                    SOUP_TYPE_URI,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:proxy-resolver:
         *
@@ -3257,7 +3258,8 @@
                                     "Proxy Resolver",
                                     "The GProxyResolver to use for this 
session",
                                     G_TYPE_PROXY_RESOLVER,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_MAX_CONNS:
         *
@@ -3271,7 +3273,8 @@
                                  1,
                                  G_MAXINT,
                                  SOUP_SESSION_MAX_CONNS_DEFAULT,
-                                 G_PARAM_READWRITE));
+                                 G_PARAM_READWRITE |
+                                 G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_MAX_CONNS_PER_HOST:
         *
@@ -3285,7 +3288,8 @@
                                  1,
                                  G_MAXINT,
                                  SOUP_SESSION_MAX_CONNS_PER_HOST_DEFAULT,
-                                 G_PARAM_READWRITE));
+                                 G_PARAM_READWRITE |
+                                 G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:idle-timeout:
         *
@@ -3318,7 +3322,8 @@
                                   "Idle Timeout",
                                   "Connection lifetime when idle",
                                   0, G_MAXUINT, 60,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:use-ntlm:
         *
@@ -3338,7 +3343,8 @@
                                      "Use NTLM",
                                      "Whether or not to use NTLM 
authentication",
                                      FALSE,
-                                     G_PARAM_READWRITE | G_PARAM_DEPRECATED));
+                                     G_PARAM_READWRITE | G_PARAM_DEPRECATED |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:ssl-ca-file:
         *
@@ -3364,7 +3370,8 @@
                                     "SSL CA file",
                                     "File containing SSL CA certificates",
                                     NULL,
-                                    G_PARAM_READWRITE | G_PARAM_DEPRECATED));
+                                    G_PARAM_READWRITE | G_PARAM_DEPRECATED |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE:
         *
@@ -3401,7 +3408,8 @@
                                      "Use system CA file",
                                      "Use the system certificate database",
                                      TRUE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_TLS_DATABASE:
         *
@@ -3437,7 +3445,8 @@
                                     "TLS Database",
                                     "TLS database to use",
                                     G_TYPE_TLS_DATABASE,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_SSL_STRICT:
         *
@@ -3479,7 +3488,8 @@
                                      "Strictly validate SSL certificates",
                                      "Whether certificate errors should be 
considered a connection error",
                                      TRUE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:async-context:
         *
@@ -3507,7 +3517,8 @@
                g_param_spec_pointer (SOUP_SESSION_ASYNC_CONTEXT,
                                      "Async GMainContext",
                                      "The GMainContext to dispatch async I/O 
in",
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SESSION_USE_THREAD_CONTEXT:
         *
@@ -3532,7 +3543,8 @@
                                      "Use thread-default GMainContext",
                                      "Whether to use thread-default main 
contexts",
                                      FALSE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:timeout:
         *
@@ -3566,7 +3578,8 @@
                                   "Timeout value",
                                   "Value in seconds to timeout a blocking I/O",
                                   0, G_MAXUINT, 0,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupSession:user-agent:
@@ -3606,7 +3619,8 @@
                                     "User-Agent string",
                                     "User-Agent string",
                                     NULL,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupSession:accept-language:
@@ -3632,7 +3646,8 @@
                                     "Accept-Language string",
                                     "Accept-Language string",
                                     NULL,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupSession:accept-language-auto:
@@ -3659,7 +3674,8 @@
                                      "Accept-Language automatic mode",
                                      "Accept-Language automatic mode",
                                      FALSE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
 
        /**
         * SoupSession:add-feature: (skip)
@@ -3682,7 +3698,8 @@
                                     "Add Feature",
                                     "Add a feature object to the session",
                                     SOUP_TYPE_SESSION_FEATURE,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:add-feature-by-type: (skip)
         *
@@ -3704,7 +3721,8 @@
                                    "Add Feature By Type",
                                    "Add a feature object of the given type to 
the session",
                                    G_TYPE_OBJECT,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:remove-feature-by-type: (skip)
         *
@@ -3727,7 +3745,8 @@
                                    "Remove Feature By Type",
                                    "Remove features of the given type from the 
session",
                                    G_TYPE_OBJECT,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:http-aliases:
         *
@@ -3762,7 +3781,8 @@
                                    "http aliases",
                                    "URI schemes that are considered aliases 
for 'http'",
                                    G_TYPE_STRV,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
        /**
         * SoupSession:https-aliases:
         *
@@ -3788,7 +3808,8 @@
                                    "https aliases",
                                    "URI schemes that are considered aliases 
for 'https'",
                                    G_TYPE_STRV,
-                                   G_PARAM_READWRITE));
+                                   G_PARAM_READWRITE |
+                                   G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SESSION_LOCAL_ADDRESS:
@@ -3814,7 +3835,8 @@
                                     "Local address",
                                     "Address of local end of socket",
                                     SOUP_TYPE_ADDRESS,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SESSION_TLS_INTERACTION:
@@ -3838,7 +3860,8 @@
                                     "TLS Interaction",
                                     "TLS interaction to use",
                                     G_TYPE_TLS_INTERACTION,
-                                    G_PARAM_READWRITE));
+                                    G_PARAM_READWRITE |
+                                    G_PARAM_STATIC_STRINGS));
 }
 
 
@@ -4898,6 +4921,7 @@
        SoupMessageQueueItem *item;
        GTask *task;
        GPtrArray *supported_extensions;
+       SoupMessageFlags flags;
 
        g_return_if_fail (SOUP_IS_SESSION (session));
        g_return_if_fail (priv->use_thread_context);
@@ -4906,6 +4930,15 @@
        supported_extensions = 
soup_session_get_supported_websocket_extensions_for_message (session, msg);
        soup_websocket_client_prepare_handshake_with_extensions (msg, origin, 
protocols, supported_extensions);
 
+       /* When the client is to _Establish a WebSocket Connection_ given a set
+        * of (/host/, /port/, /resource name/, and /secure/ flag), along with a
+        * list of /protocols/ and /extensions/ to be used, and an /origin/ in
+        * the case of web browsers, it MUST open a connection, send an opening
+        * handshake, and read the server's handshake in response.
+        */
+       flags = soup_message_get_flags (msg);
+       soup_message_set_flags (msg, flags | SOUP_MESSAGE_NEW_CONNECTION);
+
        task = g_task_new (session, cancellable, callback, user_data);
        item = soup_session_append_queue_item (session, msg, TRUE, FALSE,
                                               
websocket_connect_async_complete, task);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-socket.c 
new/libsoup-2.68.4/libsoup/soup-socket.c
--- old/libsoup-2.68.3/libsoup/soup-socket.c    2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/libsoup/soup-socket.c    2020-02-26 00:57:19.855441800 
+0100
@@ -543,21 +543,24 @@
                                   "FD",
                                   "The socket's file descriptor",
                                   -1, G_MAXINT, -1,
-                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
+                                  G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY |
+                                  G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                 object_class, PROP_GSOCKET,
                 g_param_spec_object (SOUP_SOCKET_GSOCKET,
                                      "GSocket",
                                      "The socket's underlying GSocket",
                                      G_TYPE_SOCKET,
-                                     G_PARAM_WRITABLE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY 
|
+                                     G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                 object_class, PROP_IOSTREAM,
                 g_param_spec_object (SOUP_SOCKET_IOSTREAM,
                                      "GIOStream",
                                      "The socket's underlying GIOStream",
                                      G_TYPE_IO_STREAM,
-                                     G_PARAM_WRITABLE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY 
|
+                                     G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SOCKET_LOCAL_ADDRESS:
@@ -571,7 +574,8 @@
                                     "Local address",
                                     "Address of local end of socket",
                                     SOUP_TYPE_ADDRESS,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_REMOTE_ADDRESS:
         *
@@ -584,7 +588,8 @@
                                     "Remote address",
                                     "Address of remote end of socket",
                                     SOUP_TYPE_ADDRESS,
-                                    G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                    G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY 
|
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SoupSocket:non-blocking:
         *
@@ -621,14 +626,16 @@
                                      "Non-blocking",
                                      "Whether or not the socket uses 
non-blocking I/O",
                                      TRUE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        g_object_class_install_property (
                object_class, PROP_IPV6_ONLY,
                g_param_spec_boolean (SOUP_SOCKET_IPV6_ONLY,
                                      "IPv6 only",
                                      "IPv6 only",
                                      FALSE,
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_IS_SERVER:
         *
@@ -651,7 +658,8 @@
                                      "Server",
                                      "Whether or not the socket is a server 
socket",
                                      FALSE,
-                                     G_PARAM_READABLE));
+                                     G_PARAM_READABLE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_SSL_CREDENTIALS:
         *
@@ -667,7 +675,8 @@
                g_param_spec_pointer (SOUP_SOCKET_SSL_CREDENTIALS,
                                      "SSL credentials",
                                      "SSL credential information, passed from 
the session to the SSL implementation",
-                                     G_PARAM_READWRITE));
+                                     G_PARAM_READWRITE |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_SSL_STRICT:
         *
@@ -679,7 +688,8 @@
                                      "Strictly validate SSL certificates",
                                      "Whether certificate errors should be 
considered a connection error",
                                      TRUE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_SSL_FALLBACK:
         *
@@ -691,7 +701,8 @@
                                      "SSLv3 fallback",
                                      "Use SSLv3 instead of TLS (client-side 
only)",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_TRUSTED_CERTIFICATE:
         *
@@ -704,7 +715,8 @@
                                     "Trusted Certificate",
                                     "Whether the server certificate is 
trusted, if this is an SSL socket",
                                     FALSE,
-                                    G_PARAM_READABLE));
+                                    G_PARAM_READABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_ASYNC_CONTEXT:
         *
@@ -716,7 +728,8 @@
                g_param_spec_pointer (SOUP_SOCKET_ASYNC_CONTEXT,
                                      "Async GMainContext",
                                      "The GMainContext to dispatch this 
socket's async I/O in",
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SOCKET_USE_THREAD_CONTEXT:
@@ -739,7 +752,8 @@
                                      "Use thread context",
                                      "Use g_main_context_get_thread_default",
                                      FALSE,
-                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY));
+                                     G_PARAM_READWRITE | 
G_PARAM_CONSTRUCT_ONLY |
+                                     G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SOCKET_TIMEOUT:
@@ -753,7 +767,8 @@
                                   "Timeout value",
                                   "Value in seconds to timeout a blocking I/O",
                                   0, G_MAXUINT, 0,
-                                  G_PARAM_READWRITE));
+                                  G_PARAM_READWRITE |
+                                  G_PARAM_STATIC_STRINGS));
 
        /**
         * SOUP_SOCKET_TLS_CERTIFICATE:
@@ -771,7 +786,8 @@
                                     "TLS certificate",
                                     "The peer's TLS certificate",
                                     G_TYPE_TLS_CERTIFICATE,
-                                    G_PARAM_READABLE));
+                                    G_PARAM_READABLE |
+                                    G_PARAM_STATIC_STRINGS));
        /**
         * SOUP_SOCKET_TLS_ERRORS:
         *
@@ -788,7 +804,8 @@
                                    "TLS errors",
                                    "Errors with the peer's TLS certificate",
                                    G_TYPE_TLS_CERTIFICATE_FLAGS, 0,
-                                   G_PARAM_READABLE));
+                                   G_PARAM_READABLE |
+                                   G_PARAM_STATIC_STRINGS));
 
        g_object_class_install_property (
                 object_class, PROP_SOCKET_PROPERTIES,
@@ -796,7 +813,8 @@
                                     "Socket properties",
                                     "Socket properties",
                                     SOUP_TYPE_SOCKET_PROPERTIES,
-                                    G_PARAM_WRITABLE));
+                                    G_PARAM_WRITABLE |
+                                    G_PARAM_STATIC_STRINGS));
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/libsoup/soup-websocket-connection.c 
new/libsoup-2.68.4/libsoup/soup-websocket-connection.c
--- old/libsoup-2.68.3/libsoup/soup-websocket-connection.c      2019-12-04 
11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/libsoup/soup-websocket-connection.c      2020-02-26 
00:57:19.858775100 +0100
@@ -1156,7 +1156,8 @@
                return;
        }
 
-       soup_websocket_connection_start_input_source (self);
+       if (!pv->io_closing)
+               soup_websocket_connection_start_input_source (self);
 }
 
 static gboolean
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/meson.build 
new/libsoup-2.68.4/meson.build
--- old/libsoup-2.68.3/meson.build      2019-12-04 11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/meson.build      2020-02-26 00:57:19.858775100 +0100
@@ -1,5 +1,5 @@
 project('libsoup', 'c',
-        version: '2.68.3',
+        version: '2.68.4',
         meson_version : '>=0.50',
         license : 'LGPL2',
         default_options : 'c_std=c89')
@@ -72,7 +72,7 @@
 
 add_project_arguments(common_flags, language : 'c')
 
-glib_required_version = '>= 2.38'
+glib_required_version = '>= 2.58'
 glib_dep = dependency('glib-2.0', version : glib_required_version,
                        fallback: ['glib', 'libglib_dep'])
 gobject_dep = dependency('gobject-2.0', version : glib_required_version,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/po/LINGUAS 
new/libsoup-2.68.4/po/LINGUAS
--- old/libsoup-2.68.3/po/LINGUAS       2019-12-04 11:50:12.000000000 +0100
+++ new/libsoup-2.68.4/po/LINGUAS       2020-02-26 00:57:19.858775100 +0100
@@ -35,6 +35,7 @@
 lv
 ml
 mr
+ms
 nb
 ne
 nl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/po/ms.po new/libsoup-2.68.4/po/ms.po
--- old/libsoup-2.68.3/po/ms.po 1970-01-01 01:00:00.000000000 +0100
+++ new/libsoup-2.68.4/po/ms.po 2020-02-26 00:57:19.862108500 +0100
@@ -0,0 +1,191 @@
+# Malay translation for libsoup.
+# Copyright (C) 2019 libsoup's COPYRIGHT HOLDER
+# This file is distributed under the same license as the libsoup package.
+# abuyop <[email protected]>, 2019.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: libsoup master\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/libsoup/issues\n";
+"POT-Creation-Date: 2019-12-04 12:57+0000\n"
+"PO-Revision-Date: 2019-12-26 01:38+0800\n"
+"Language-Team: Malay <[email protected]>\n"
+"Language: ms\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Last-Translator: abuyop <[email protected]>\n"
+"X-Generator: Poedit 2.0.6\n"
+
+#: libsoup/soup-body-input-stream.c:139 libsoup/soup-body-input-stream.c:170
+#: libsoup/soup-body-input-stream.c:203 libsoup/soup-message-io.c:236
+msgid "Connection terminated unexpectedly"
+msgstr "Sambungan ditamatkan tanpa jangka"
+
+#: libsoup/soup-body-input-stream.c:459
+msgid "Invalid seek request"
+msgstr "Permintaan jangkau tidak sah"
+
+#: libsoup/soup-body-input-stream.c:487
+msgid "Cannot truncate SoupBodyInputStream"
+msgstr "Tidak dapat memangkas SoupBodyInputStream"
+
+#: libsoup/soup-cache-input-stream.c:76
+msgid "Network stream unexpectedly closed"
+msgstr "Strim rangkaian ditutup tanpa jangka"
+
+#: libsoup/soup-cache-input-stream.c:291
+msgid "Failed to completely cache the resource"
+msgstr "Gagal melengkapkan cache sumber"
+
+#: libsoup/soup-converter-wrapper.c:189
+#, c-format
+msgid "Output buffer is too small"
+msgstr "Penimbal ouput terlalu kecil"
+
+#: libsoup/soup-message-client-io.c:39
+msgid "Could not parse HTTP response"
+msgstr "Tidak dapat menghurai respons HTTP"
+
+#: libsoup/soup-message-client-io.c:62
+msgid "Unrecognized HTTP response encoding"
+msgstr "Pengekodan respons HTTP tidak dikenali"
+
+#: libsoup/soup-message-io.c:261
+msgid "Header too big"
+msgstr "Pengepala terlalu besar"
+
+#: libsoup/soup-message-io.c:393 libsoup/soup-message-io.c:1016
+msgid "Operation would block"
+msgstr "Operasi mungkin disekat"
+
+#: libsoup/soup-message-io.c:968 libsoup/soup-message-io.c:1001
+msgid "Operation was cancelled"
+msgstr "Operasi dibatalkan"
+
+#: libsoup/soup-message-server-io.c:63
+msgid "Could not parse HTTP request"
+msgstr "Tidak dapat menghurai permintaan HTTP"
+
+#: libsoup/soup-request.c:141
+#, c-format
+msgid "No URI provided"
+msgstr "Tiada URI disediakan"
+
+#: libsoup/soup-request.c:151
+#, c-format
+msgid "Invalid “%s” URI: %s"
+msgstr "URI “%s” tidak sah: %s"
+
+#: libsoup/soup-server.c:1805
+msgid "Can’t create a TLS server without a TLS certificate"
+msgstr "Tidak dapat cipta satu pelayan TLS tanpa satu sijil TLS"
+
+#: libsoup/soup-server.c:1822
+#, c-format
+msgid "Could not listen on address %s, port %d: "
+msgstr "Tidak dapat mendengar pada alamat %s, port %d: "
+
+#: libsoup/soup-session.c:4543
+#, c-format
+msgid "Could not parse URI “%s”"
+msgstr "Tidak dapat hurai URI \"%s\""
+
+#: libsoup/soup-session.c:4580
+#, c-format
+msgid "Unsupported URI scheme “%s”"
+msgstr "Skema URI \"%s\" tidak disokong"
+
+#: libsoup/soup-session.c:4602
+#, c-format
+msgid "Not an HTTP URI"
+msgstr "Bukan satu URI HTTP"
+
+#: libsoup/soup-session.c:4813
+msgid "The server did not accept the WebSocket handshake."
+msgstr "Pelayan tidak menerima jabat tangan WebSocket."
+
+#: libsoup/soup-socket.c:148
+msgid "Can’t import non-socket as SoupSocket"
+msgstr "Tidak dapat mengimport bukan-soket sebagai SoupSocket"
+
+#: libsoup/soup-socket.c:166
+msgid "Could not import existing socket: "
+msgstr "Tidak dapat mengimport soket sedia ada: "
+
+#: libsoup/soup-socket.c:175
+msgid "Can’t import unconnected socket"
+msgstr "Tidak dapat mengimport soket tidak bersambung"
+
+#: libsoup/soup-websocket.c:479 libsoup/soup-websocket.c:523
+#: libsoup/soup-websocket.c:539
+msgid "Server requested unsupported extension"
+msgstr "Pelayan meminta sambungan tidak disokong"
+
+#: libsoup/soup-websocket.c:502 libsoup/soup-websocket.c:694
+#, c-format
+msgid "Incorrect WebSocket “%s” header"
+msgstr "Pengepala WebSocket “%s” adalah salah"
+
+#: libsoup/soup-websocket.c:503 libsoup/soup-websocket.c:1024
+#, c-format
+msgid "Server returned incorrect “%s” key"
+msgstr "Pelayan mengembalikan kunci “%s” yang salah"
+
+#: libsoup/soup-websocket.c:566
+#, c-format
+msgid "Duplicated parameter in “%s” WebSocket extension header"
+msgstr "Parameter pendua dalam pengepala sambungan WebSocket “%s”"
+
+#: libsoup/soup-websocket.c:567
+#, c-format
+msgid "Server returned a duplicated parameter in “%s” WebSocket extension 
header"
+msgstr "Pelayan mengembalikan satu parameter pendua dalam pengepala sambungan 
WebSocket “%s”"
+
+#: libsoup/soup-websocket.c:658 libsoup/soup-websocket.c:667
+msgid "WebSocket handshake expected"
+msgstr "Jabat tangan WebSocket dijangka"
+
+#: libsoup/soup-websocket.c:675
+msgid "Unsupported WebSocket version"
+msgstr "Versi WebSocket tidak disokong"
+
+#: libsoup/soup-websocket.c:684
+msgid "Invalid WebSocket key"
+msgstr "Kunci WebSocket tidak sah"
+
+#: libsoup/soup-websocket.c:703
+msgid "Unsupported WebSocket subprotocol"
+msgstr "Subprotokol WebSocket tidak disokong"
+
+#: libsoup/soup-websocket.c:975
+msgid "Server rejected WebSocket handshake"
+msgstr "Pelayan menolak jabat tangan WebSocket"
+
+#: libsoup/soup-websocket.c:983 libsoup/soup-websocket.c:992
+msgid "Server ignored WebSocket handshake"
+msgstr "Pelayan mengabaikan jabat tangan WebSocket"
+
+#: libsoup/soup-websocket.c:1004
+msgid "Server requested unsupported protocol"
+msgstr "Pelayan meminta protokol tidak disokong"
+
+#: libsoup/soup-tld.c:150
+msgid "No public-suffix list available."
+msgstr "Tiada senarai akhiran-awam tersedia."
+
+#: libsoup/soup-tld.c:160 libsoup/soup-tld.c:176
+msgid "Invalid hostname"
+msgstr "Nama hos tidak sah"
+
+#: libsoup/soup-tld.c:167
+msgid "Hostname is an IP address"
+msgstr "Nama hos ialah alamat IP"
+
+#: libsoup/soup-tld.c:188
+msgid "Hostname has no base domain"
+msgstr "Nama hos tidak mempunyai domain tapak"
+
+#: libsoup/soup-tld.c:196
+msgid "Not enough domains"
+msgstr "Domain tidak mencukupi"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsoup-2.68.3/tests/websocket-test.c 
new/libsoup-2.68.4/tests/websocket-test.c
--- old/libsoup-2.68.3/tests/websocket-test.c   2019-12-04 11:50:12.000000000 
+0100
+++ new/libsoup-2.68.4/tests/websocket-test.c   2020-02-26 00:57:19.872108500 
+0100
@@ -1067,6 +1067,34 @@
        g_io_stream_close (test->raw_server, NULL, NULL);
 }
 
+static gboolean
+on_close_unref_connection (SoupWebsocketConnection *ws,
+                          gpointer user_data)
+{
+       Test *test = user_data;
+
+       g_assert_true (test->server == ws);
+       g_clear_object (&test->server);
+       return TRUE;
+}
+
+static void
+test_server_unref_connection_on_close (Test *test,
+                                      gconstpointer data)
+{
+       gboolean close_event_client = FALSE;
+
+       g_signal_connect (test->client, "closed", G_CALLBACK 
(on_close_set_flag), &close_event_client);
+       g_signal_connect (test->server, "closed", G_CALLBACK 
(on_close_unref_connection), test);
+       soup_websocket_connection_close (test->client, 
SOUP_WEBSOCKET_CLOSE_GOING_AWAY, "client closed");
+       g_assert_cmpint (soup_websocket_connection_get_state (test->client), 
==, SOUP_WEBSOCKET_STATE_CLOSING);
+
+       WAIT_UNTIL (test->server == NULL);
+       WAIT_UNTIL (soup_websocket_connection_get_state (test->client) == 
SOUP_WEBSOCKET_STATE_CLOSED);
+
+       g_assert_true (close_event_client);
+}
+
 static gpointer
 timeout_server_thread (gpointer user_data)
 {
@@ -1923,6 +1951,11 @@
                    test_close_after_close,
                    teardown_direct_connection);
 
+       g_test_add ("/websocket/soup/server-unref-connection-on-close", Test, 
NULL,
+                   setup_soup_connection,
+                   test_server_unref_connection_on_close,
+                   teardown_soup_connection);
+
 
        g_test_add ("/websocket/direct/protocol-negotiate", Test, NULL, NULL,
                    test_protocol_negotiate_direct,


Reply via email to