@@ -56,10 +56,10 @@ public void add_string(string type, string val)
5656 m_request_object. set_string_member(type, val);
5757}
5858
59- private string request_object_to_string ( )
59+ private static string object_to_string ( Json . Object obj )
6060{
6161 var root = new Json .Node (Json . NodeType . OBJECT );
62- root. set_object(m_request_object );
62+ root. set_object(obj );
6363
6464 var gen = new Json .Generator ();
6565 gen. set_root(root);
@@ -87,7 +87,7 @@ public ConnectionError send_impl(bool ping)
8787
8888 var settingsTweaks = new GLib .Settings (" org.gnome.feedreader.tweaks" );
8989
90- var data = request_object_to_string( );
90+ var data = object_to_string(m_request_object );
9191 m_message_soup. set_request(m_contenttype, Soup . MemoryUse . COPY , data. data);
9292
9393 if (settingsTweaks. get_boolean(" do-not-track" ))
@@ -193,7 +193,19 @@ public uint getStatusCode()
193193private void logError (string prefix )
194194{
195195 var url = m_message_soup. get_uri(). to_string(false );
196- var request = request_object_to_string();
196+ var obj = m_request_object;
197+ if (obj. has_member(" password" ))
198+ {
199+ obj = new Json .Object ();
200+ m_request_object. foreach_member((_, name, member) = >
201+ {
202+ if (name == " password" )
203+ obj. set_string_member(" password" , " [redacted]" );
204+ else
205+ obj. set_member(name, member);
206+ });
207+ }
208+ var request = object_to_string(obj);
197209 var response = (string )m_message_soup. response_body. flatten(). data;
198210 Logger . error(@" $prefix\n URL: $url\n Request object: $request\n Response: $response " );
199211}
0 commit comments