{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":300155217,"defaultBranch":"master","name":"online","ownerLogin":"CollaboraOnline","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-10-01T05:23:57.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/22418908?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1727449815.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"22b3fbb23e9f8b1b361f5907032676e24a7fad49","ref":"refs/heads/private/eszkadev/slideshow-autostart","pushedAt":"2024-09-27T15:10:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"slideshow: autostart in window\n\nIf we use presentation with autostart (.pps) then\nfullscreen request fails as it is not invoked by the\nuser interaction. For now do the fallback -> open in\nwindow. If user has disabled popup, he will be asked\nin the message box to allow the popup.\n\nSigned-off-by: Szymon Kłos \nChange-Id: I9e8313f697e30fb25fa3d98b3f4a30b7df433a3e","shortMessageHtmlLink":"slideshow: autostart in window"}},{"before":"a736de114e39af628b1dc0004c3fe01f33be053c","after":"f5615a94faf97cc89d09c0959228edec8c4361c5","ref":"refs/heads/master","pushedAt":"2024-09-27T11:50:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"timar","name":"Andras Timar","path":"/timar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/290614?s=80&v=4"},"commit":{"message":"Update l10n files for Weblate\n\nSigned-off-by: Andras Timar \nChange-Id: Ia79b6449293c32fb54da43785a5fd62a0f80bce0","shortMessageHtmlLink":"Update l10n files for Weblate"}},{"before":"20f43dd74e42d97bd56200cc6003b0902dd7f336","after":"a736de114e39af628b1dc0004c3fe01f33be053c","ref":"refs/heads/master","pushedAt":"2024-09-27T11:48:57.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"timar","name":"Andras Timar","path":"/timar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/290614?s=80&v=4"},"commit":{"message":"Translated using Weblate (Chinese (Traditional Han script))\n\nCurrently translated at 100.0% (631 of 631 strings)\n\nCo-authored-by: Jeff Huang \nTranslate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hant/\nTranslation: Collabora Online/UI\nSigned-off-by: Andras Timar \nChange-Id: I50682fbff6ecfb9b1624f24c31d0f74dc8572fdf","shortMessageHtmlLink":"Translated using Weblate (Chinese (Traditional Han script))"}},{"before":"e2d4a970cf2dc6277b55fb9712f01fbf0cb5ae24","after":null,"ref":"refs/heads/private/caolan/safer_sync_dns","pushedAt":"2024-09-27T10:00:42.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"vmiklos","name":"Miklos Vajna","path":"/vmiklos","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13838?s=80&v=4"}},{"before":"4eb191de11dcf47cf3c8430bb8fe1234cf1e9173","after":"20f43dd74e42d97bd56200cc6003b0902dd7f336","ref":"refs/heads/master","pushedAt":"2024-09-27T10:00:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vmiklos","name":"Miklos Vajna","path":"/vmiklos","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13838?s=80&v=4"},"commit":{"message":"make this thread local\n\nat least one case of a crash in std::erase_if here.\n\n #1 0x00007f9d9b8d17f1 in __GI_abort () at abort.c:79\n #2 0x00000000005af591 in Poco::SignalHandler::handleSignal(int) [clone .cold] () at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/allocator.h:174\n #3 \n #4 0x0000000000803115 in __gnu_cxx::__exchange_and_add (__val=-1, __mem=0x11) at /opt/rh/devtoolset-12/root/usr/include/c++/12/ext/atomicity.h:101\n #5 __gnu_cxx::__exchange_and_add_dispatch (__val=-1, __mem=0x11) at /opt/rh/devtoolset-12/root/usr/include/c++/12/ext/atomicity.h:101\n #6 std::string::_Rep::_M_dispose (__a=..., this=0x1) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/cow_string.h:288\n #7 std::basic_string, std::allocator >::~basic_string (this=0x7f9d7416a5c0, __in_chrg=)\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/cow_string.h:718\n #8 std::destroy_at (__location=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:88\n #9 std::_Destroy (__pointer=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:149\n #10 std::_Destroy_aux::__destroy (__last=0x7f9d7416a5d8, __first=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:163\n #11 std::_Destroy (__last=0x7f9d7416a5d8, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:196\n #12 std::_Destroy (__last=0x7f9d7416a5d8, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/alloc_traits.h:850\n #13 std::vector >::~vector (this=0x7f9d7c0fb9c8, __in_chrg=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:730\n #14 net::HostEntry::~HostEntry (this=0x7f9d7c0fb9b8, __in_chrg=) at net/NetUtil.cpp:127\n #15 0x00000000008083e9 in net::DNSCacheEntry::~DNSCacheEntry (this=0x7f9d7c0fb9a8, __in_chrg=) at net/NetUtil.cpp:129\n #16 std::destroy_at (__location=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:88\n #17 std::_Destroy (__pointer=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:149\n #18 std::_Destroy_aux::__destroy (__last=, __first=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:163\n #19 std::_Destroy (__last=, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:196\n #20 std::_Destroy (__last=, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/alloc_traits.h:850\n #21 std::vector >::_M_erase_at_end (__pos=, this=)\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1932\n #22 std::vector >::_M_erase (__last=..., __first=\n {queryAddress = \"some.address.or.other\", queryPort = \"\", hostEntry = {_requestName = \"some.address.or.other\", _canonicalName = \"\", _ipAddresses = std::vector of length 3, capacity 3 = {, , }, _ainfo = std::shared_ptr (use count 276, weak count -1) = {get() = 0x7f9d741ffd70}, _errno = 0, _eaino = 0}, lookupTime = {__d = {__r = 1035924226793350}}},\n this=0xef16a0 ) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/vector.tcc:196\n #23 std::vector >::erase (__last=..., __first=..., this=0xef16a0 )\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1561\n #24 std::erase_if, net::resolveDNS(const std::string&, const std::string&, std::vector&):: > (\n __pred=..., __cont=std::vector of length 2, capacity 8 = {...}) at /opt/rh/devtoolset-12/root/usr/include/c++/12/vector:117\n #25 net::resolveDNS(std::string const&, std::string const&, std::vector >&) () at net/NetUtil.cpp:144\n #26 0x0000000000808f96 in net::DNSResolver::resolveDNS (port=\"\", addressToCheck=\"some.address.or.other\", this=0xef16a0 ) at net/NetUtil.cpp:171\n #27 net::resolveDNS(std::string const&) () at net/NetUtil.cpp:178\n #28 0x000000000080921a in net::resolveOneAddress(std::string const&) () at net/NetUtil.cpp:194\n #29 0x00000000008092e3 in net::resolveHostAddress(std::string const&) () at net/NetUtil.cpp:205\n #30 0x0000000000809354 in net::isLocalhost(std::string const&) () at net/NetUtil.cpp:227\n #31 0x0000000000811887 in SslStreamSocket::verifyCertificate() () at net/Socket.hpp:995\n #32 0x000000000082447b in SslStreamSocket::doHandshake (this=this@entry=0x7f9d7c18d0a0) at ./net/SslSocket.hpp:266\n #33 0x000000000082471b in SslStreamSocket::readIncomingData (this=0x7f9d7c18d0a0) at ./net/SslSocket.hpp:140\n #34 0x000000000081e02c in StreamSocket::handlePoll (this=0x7f9d7c18d0a0, disposition=..., now=..., events=1) at net/Socket.hpp:1348\n #35 0x0000000000816082 in SocketPoll::poll(long) () at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1123\n #36 0x0000000000652250 in SocketPoll::poll (timeoutMax=..., this=) at ./net/Socket.hpp:689\n #37 DocumentBroker::pollThread() () at wsd/DocumentBroker.cpp:372\n #38 0x00000000008171a5 in SocketPoll::pollingThreadEntry() () at net/Socket.cpp:390\n #39 0x0000000000be1c83 in execute_native_thread_routine ()\n #40 0x00007f9d9bc896db in start_thread (arg=0x7f9d527fc700) at pthread_create.c:463\n #41 0x00007f9d9b9b274f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95\n\nSigned-off-by: Caolán McNamara \nChange-Id: Ie0d9e547dc9b4803ea95848c76302601a996c53a","shortMessageHtmlLink":"make this thread local"}},{"before":"3e342155501b1feaec8065ab1c3e5219612c6e5e","after":"b5d7238fbfd49fc628b249a2b0fa074663afc044","ref":"refs/heads/private/skyler/push-qkxxksuysxpw","pushedAt":"2024-09-27T09:49:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Minion3665","name":"Skyler Grey","path":"/Minion3665","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/34243578?s=80&v=4"},"commit":{"message":"fix(android): Use uno command for all clipboard\n\nPreviously on mobile, we were only using the uno commands for some\nclipboard operations - the pasting ones. That's incorrect, as on Android\nand iOS we don't have access to the browser clipboard APIs and should be\nusing the native bits, which for Android intercept these UNO calls and\nuse them to manage the clipboard.\n\nFor iOS, this still falls over - albeit in a slighly different way - but\nthe iOS clipboard code is in core and is nontrivial to fix. I have a\npatch in the works which would make an API similar to\nnavigator.clipboard for iOS/Android (hopefully reducing our pains here)\nbut I don't see a point in not making a tiny, temporary Android fix.\n\nWhen I change the clipboard system's mobile app bits, this will go away\nanyway :)\n\nSigned-off-by: Skyler Grey \nChange-Id: Ifa68b6e956cd5ca75dc8f54b4198a441b2bf1887","shortMessageHtmlLink":"fix(android): Use uno command for all clipboard"}},{"before":"e6ec5f3b2c5e8a6346f858474e8fe99a8f70829d","after":null,"ref":"refs/heads/private/eszkadev/slideshow-avoid-infinite-reccurency","pushedAt":"2024-09-27T09:42:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"}},{"before":"3a511f536e85f91839c84727d712d5deaa84c0b8","after":"4eb191de11dcf47cf3c8430bb8fe1234cf1e9173","ref":"refs/heads/master","pushedAt":"2024-09-27T09:42:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"slideshow: avoid reccurent calls with wrong number\n\nglobal.js:552 Uncaught RangeError: Maximum call stack size exceeded\n at Arguments.slice ()\n at Object.logWithCool [as log] (global.js:552:40)\n at DebugPrinter.print (tools.ts:181:23)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:189:10)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:224:9)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:224:9)\n\nSigned-off-by: Szymon Kłos \nChange-Id: I1b7fb91135cf7dd289ac2f746c98f9a333c5b19b","shortMessageHtmlLink":"slideshow: avoid reccurent calls with wrong number"}},{"before":"0361e5d73650523825fae3047784e1045380248f","after":null,"ref":"refs/heads/private/bayram/document-title","pushedAt":"2024-09-27T09:09:06.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pedropintosilva","name":null,"path":"/pedropintosilva","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/65948705?s=80&v=4"}},{"before":"600143620be07355ae40578923fbb3801f7528f4","after":"3a511f536e85f91839c84727d712d5deaa84c0b8","ref":"refs/heads/master","pushedAt":"2024-09-27T09:09:03.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"pedropintosilva","name":null,"path":"/pedropintosilva","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/65948705?s=80&v=4"},"commit":{"message":"make editable document name bar expand to available space\n\n- when editing a document name, use full space.\n- editing the document name can be done after save.\n\nSigned-off-by: Bayram Çiçek \nChange-Id: Ie53365237811539fa230ec152b6e512f41d9d5d0","shortMessageHtmlLink":"make editable document name bar expand to available space"}},{"before":"9d03c3bc5ee2043158dcda152551a04dfed72b32","after":"9e0c51f9e034c974c38ea7bbc8319f408382402b","ref":"refs/heads/private/caolan/can_elide_a_dns_lookup","pushedAt":"2024-09-27T09:00:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"we have the DNS info at StreamSocket ctor time that its localhost\n\nso we don't have to fetch it again later at SSL verification time.\n\nSigned-off-by: Caolán McNamara \nChange-Id: Iadfb3918cbedf67393eaeb6d8ba5f94cb6c4c27b","shortMessageHtmlLink":"we have the DNS info at StreamSocket ctor time that its localhost"}},{"before":"011744654ddfdd11c3fd3f19ed43d30f7b181857","after":null,"ref":"refs/heads/private/eszkadev/slideshow-pause-exit","pushedAt":"2024-09-27T08:28:49.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"}},{"before":"7175f30f2f7c718603afe5e5d88754f3dd1d72cd","after":"600143620be07355ae40578923fbb3801f7528f4","ref":"refs/heads/master","pushedAt":"2024-09-27T08:28:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"slideshow: stop timer if closing\n\nIf we close \"pause screen\" with counter before it ends.\nTimer was still active causing an error in the browser console.\n\nSigned-off-by: Szymon Kłos \nChange-Id: I1455b18e7df8c6be98933acaba714e359e016eef","shortMessageHtmlLink":"slideshow: stop timer if closing"}},{"before":"fbca0a9d49f6333e14285a205f319045440a5acb","after":"e6ec5f3b2c5e8a6346f858474e8fe99a8f70829d","ref":"refs/heads/private/eszkadev/slideshow-avoid-infinite-reccurency","pushedAt":"2024-09-27T08:26:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"slideshow: avoid reccurent calls with wrong number\n\nglobal.js:552 Uncaught RangeError: Maximum call stack size exceeded\n at Arguments.slice ()\n at Object.logWithCool [as log] (global.js:552:40)\n at DebugPrinter.print (tools.ts:181:23)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:189:10)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:224:9)\n at SlideShowNavigator.displaySlide (SlideShowNavigator.ts:224:9)\n\nSigned-off-by: Szymon Kłos \nChange-Id: I1b7fb91135cf7dd289ac2f746c98f9a333c5b19b","shortMessageHtmlLink":"slideshow: avoid reccurent calls with wrong number"}},{"before":"8eb680e28b4fbea90b132f3f4772e357ff6c6b33","after":"7175f30f2f7c718603afe5e5d88754f3dd1d72cd","ref":"refs/heads/master","pushedAt":"2024-09-27T07:33:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Rash419","name":"Rashesh Padia","path":"/Rash419","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/26241069?s=80&v=4"},"commit":{"message":"helm: added support for network policy\n\n- I have tested some of the scenarios from\nhttps://github.com/ahmetb/kubernetes-network-policy-recipes\n\nSigned-off-by: Rashesh \nChange-Id: I852cd8a533f2591c5eed2a83235634b521db4eb8","shortMessageHtmlLink":"helm: added support for network policy"}},{"before":"b291db2118377730364eb3a0d171fe01f4970b91","after":null,"ref":"refs/heads/private/gokay/css-typo","pushedAt":"2024-09-27T06:54:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"}},{"before":"18cd65f412a4e2be374c82264c35a8bbb2082875","after":"8eb680e28b4fbea90b132f3f4772e357ff6c6b33","ref":"refs/heads/master","pushedAt":"2024-09-27T06:54:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"In CSS, \"Calc\" should start with lowercase \"c\".\n\nOr browsers may ignore the rule. Also removed an unnecessary \"calc\" function.\n\nSigned-off-by: Gökay Şatır \nChange-Id: Iab2715d93d84a6c3f314d1619b31f88c96b4d3cf","shortMessageHtmlLink":"In CSS, \"Calc\" should start with lowercase \"c\"."}},{"before":"d8a7f3fa7aa9e0a5b7ff146e9e4ff607f4d0d122","after":"6a4252c430c6450afd60bbba6d9b015665360544","ref":"refs/heads/private/vmiklos/master","pushedAt":"2024-09-27T06:51:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"jsdialog: fix input field enable action\n\nso JSDialog.SynchronizeDisabledState will work correctly\nthis is followup for commit 3591fba03ed6daf81c0ef588c273a4205c108e32\nFix state update of input element\n\nSigned-off-by: Szymon Kłos \nChange-Id: Idba598a67454933f7192039e55cc592270a5e63d","shortMessageHtmlLink":"jsdialog: fix input field enable action"}},{"before":"ce009ac79457d38baeb060cce657f3c756a51ed4","after":"18cd65f412a4e2be374c82264c35a8bbb2082875","ref":"refs/heads/master","pushedAt":"2024-09-27T06:37:28.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"eszkadev","name":"Szymon Kłos","path":"/eszkadev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5307369?s=80&v=4"},"commit":{"message":"menubar: enabled serveraudit option for admin\n\nSigned-off-by: Parth Raiyani \nChange-Id: I9c47ac67322fde47dd91f1fdd23dd420fdc7b9f1","shortMessageHtmlLink":"menubar: enabled serveraudit option for admin"}},{"before":null,"after":"b291db2118377730364eb3a0d171fe01f4970b91","ref":"refs/heads/private/gokay/css-typo","pushedAt":"2024-09-27T06:18:14.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gokaysatir","name":"Gökay ŞATIR","path":"/gokaysatir","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28108660?s=80&v=4"},"commit":{"message":"In CSS, \"Calc\" should start with lowercase \"c\".\n\nOr browsers may ignore the rule. Also removed an unnecessary \"calc\" function.\n\nSigned-off-by: Gökay Şatır \nChange-Id: Iab2715d93d84a6c3f314d1619b31f88c96b4d3cf","shortMessageHtmlLink":"In CSS, \"Calc\" should start with lowercase \"c\"."}},{"before":"40f21a65d047aa0eeb435e410ab0aab0c30ff4ff","after":"ce009ac79457d38baeb060cce657f3c756a51ed4","ref":"refs/heads/master","pushedAt":"2024-09-27T05:21:53.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"Darshan-upadhyay1110","name":"Darshan-Upadhyay","path":"/Darshan-upadhyay1110","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61383886?s=80&v=4"},"commit":{"message":"adds missing semicolon\n\nSigned-off-by: Chase Nelson \nChange-Id: I02d1ed42dfce7b243a26488a06a42f67bdac51dc","shortMessageHtmlLink":"adds missing semicolon"}},{"before":"2b173dbece75a7954653d387d91ce07d05bc99f2","after":"9d03c3bc5ee2043158dcda152551a04dfed72b32","ref":"refs/heads/private/caolan/can_elide_a_dns_lookup","pushedAt":"2024-09-26T20:25:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"we have the DNS info at StreamSocket ctor time that its localhost\n\nso we don't have to fetch it again later at SSL verification time.\n\nSigned-off-by: Caolán McNamara \nChange-Id: Iadfb3918cbedf67393eaeb6d8ba5f94cb6c4c27b","shortMessageHtmlLink":"we have the DNS info at StreamSocket ctor time that its localhost"}},{"before":"8b3e60462256895868d0b5e25c5699febebcf627","after":"2b173dbece75a7954653d387d91ce07d05bc99f2","ref":"refs/heads/private/caolan/can_elide_a_dns_lookup","pushedAt":"2024-09-26T20:11:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"we have the DNS info at StreamSocket ctor time that its localhost\n\nso we don't have to fetch it again later at SSL verification time.\n\nSigned-off-by: Caolán McNamara \nChange-Id: Iadfb3918cbedf67393eaeb6d8ba5f94cb6c4c27b","shortMessageHtmlLink":"we have the DNS info at StreamSocket ctor time that its localhost"}},{"before":null,"after":"8b3e60462256895868d0b5e25c5699febebcf627","ref":"refs/heads/private/caolan/can_elide_a_dns_lookup","pushedAt":"2024-09-26T19:13:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"we have the DNS info at StreamSocket ctor time that its localhost\n\nso we don't have to fetch it again later at SSL verification time.\n\nSigned-off-by: Caolán McNamara \nChange-Id: Iadfb3918cbedf67393eaeb6d8ba5f94cb6c4c27b","shortMessageHtmlLink":"we have the DNS info at StreamSocket ctor time that its localhost"}},{"before":"220cd7556db7b1ea6160595a580896e639b4b23e","after":"e2d4a970cf2dc6277b55fb9712f01fbf0cb5ae24","ref":"refs/heads/private/caolan/safer_sync_dns","pushedAt":"2024-09-26T19:11:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"make this thread local\n\nat least one case of a crash in std::erase_if here.\n\n #1 0x00007f9d9b8d17f1 in __GI_abort () at abort.c:79\n #2 0x00000000005af591 in Poco::SignalHandler::handleSignal(int) [clone .cold] () at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/allocator.h:174\n #3 \n #4 0x0000000000803115 in __gnu_cxx::__exchange_and_add (__val=-1, __mem=0x11) at /opt/rh/devtoolset-12/root/usr/include/c++/12/ext/atomicity.h:101\n #5 __gnu_cxx::__exchange_and_add_dispatch (__val=-1, __mem=0x11) at /opt/rh/devtoolset-12/root/usr/include/c++/12/ext/atomicity.h:101\n #6 std::string::_Rep::_M_dispose (__a=..., this=0x1) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/cow_string.h:288\n #7 std::basic_string, std::allocator >::~basic_string (this=0x7f9d7416a5c0, __in_chrg=)\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/cow_string.h:718\n #8 std::destroy_at (__location=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:88\n #9 std::_Destroy (__pointer=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:149\n #10 std::_Destroy_aux::__destroy (__last=0x7f9d7416a5d8, __first=0x7f9d7416a5c0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:163\n #11 std::_Destroy (__last=0x7f9d7416a5d8, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:196\n #12 std::_Destroy (__last=0x7f9d7416a5d8, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/alloc_traits.h:850\n #13 std::vector >::~vector (this=0x7f9d7c0fb9c8, __in_chrg=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:730\n #14 net::HostEntry::~HostEntry (this=0x7f9d7c0fb9b8, __in_chrg=) at net/NetUtil.cpp:127\n #15 0x00000000008083e9 in net::DNSCacheEntry::~DNSCacheEntry (this=0x7f9d7c0fb9a8, __in_chrg=) at net/NetUtil.cpp:129\n #16 std::destroy_at (__location=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:88\n #17 std::_Destroy (__pointer=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:149\n #18 std::_Destroy_aux::__destroy (__last=, __first=0x7f9d7c0fb9a8) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:163\n #19 std::_Destroy (__last=, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_construct.h:196\n #20 std::_Destroy (__last=, __first=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/alloc_traits.h:850\n #21 std::vector >::_M_erase_at_end (__pos=, this=)\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1932\n #22 std::vector >::_M_erase (__last=..., __first=\n {queryAddress = \"some.address.or.other\", queryPort = \"\", hostEntry = {_requestName = \"some.address.or.other\", _canonicalName = \"\", _ipAddresses = std::vector of length 3, capacity 3 = {, , }, _ainfo = std::shared_ptr (use count 276, weak count -1) = {get() = 0x7f9d741ffd70}, _errno = 0, _eaino = 0}, lookupTime = {__d = {__r = 1035924226793350}}},\n this=0xef16a0 ) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/vector.tcc:196\n #23 std::vector >::erase (__last=..., __first=..., this=0xef16a0 )\n at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1561\n #24 std::erase_if, net::resolveDNS(const std::string&, const std::string&, std::vector&):: > (\n __pred=..., __cont=std::vector of length 2, capacity 8 = {...}) at /opt/rh/devtoolset-12/root/usr/include/c++/12/vector:117\n #25 net::resolveDNS(std::string const&, std::string const&, std::vector >&) () at net/NetUtil.cpp:144\n #26 0x0000000000808f96 in net::DNSResolver::resolveDNS (port=\"\", addressToCheck=\"some.address.or.other\", this=0xef16a0 ) at net/NetUtil.cpp:171\n #27 net::resolveDNS(std::string const&) () at net/NetUtil.cpp:178\n #28 0x000000000080921a in net::resolveOneAddress(std::string const&) () at net/NetUtil.cpp:194\n #29 0x00000000008092e3 in net::resolveHostAddress(std::string const&) () at net/NetUtil.cpp:205\n #30 0x0000000000809354 in net::isLocalhost(std::string const&) () at net/NetUtil.cpp:227\n #31 0x0000000000811887 in SslStreamSocket::verifyCertificate() () at net/Socket.hpp:995\n #32 0x000000000082447b in SslStreamSocket::doHandshake (this=this@entry=0x7f9d7c18d0a0) at ./net/SslSocket.hpp:266\n #33 0x000000000082471b in SslStreamSocket::readIncomingData (this=0x7f9d7c18d0a0) at ./net/SslSocket.hpp:140\n #34 0x000000000081e02c in StreamSocket::handlePoll (this=0x7f9d7c18d0a0, disposition=..., now=..., events=1) at net/Socket.hpp:1348\n #35 0x0000000000816082 in SocketPoll::poll(long) () at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/stl_vector.h:1123\n #36 0x0000000000652250 in SocketPoll::poll (timeoutMax=..., this=) at ./net/Socket.hpp:689\n #37 DocumentBroker::pollThread() () at wsd/DocumentBroker.cpp:372\n #38 0x00000000008171a5 in SocketPoll::pollingThreadEntry() () at net/Socket.cpp:390\n #39 0x0000000000be1c83 in execute_native_thread_routine ()\n #40 0x00007f9d9bc896db in start_thread (arg=0x7f9d527fc700) at pthread_create.c:463\n #41 0x00007f9d9b9b274f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95\n\nSigned-off-by: Caolán McNamara \nChange-Id: Ie0d9e547dc9b4803ea95848c76302601a996c53a","shortMessageHtmlLink":"make this thread local"}},{"before":null,"after":"220cd7556db7b1ea6160595a580896e639b4b23e","ref":"refs/heads/private/caolan/safer_sync_dns","pushedAt":"2024-09-26T19:06:53.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"caolanm","name":"Caolán McNamara","path":"/caolanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/833656?s=80&v=4"},"commit":{"message":"make this thread local\n\nSigned-off-by: Caolán McNamara \nChange-Id: Ie0d9e547dc9b4803ea95848c76302601a996c53a","shortMessageHtmlLink":"make this thread local"}},{"before":"ac0d8ad0bd704a8d4d626501570c4af791217a6d","after":"fe29153b15c886a7c7153ae7660ce31cc6ce2785","ref":"refs/heads/private/sgothel/cool_9833_connection_limit","pushedAt":"2024-09-26T13:54:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"sgothel","name":"Sven Göthel","path":"/sgothel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/151063?s=80&v=4"},"commit":{"message":"add constexpr\n\nSigned-off-by: Sven Göthel \nSigned-off-by: Caolán McNamara \nChange-Id: I9f7a6fbbf93381de72471ea878582f8e5db88962","shortMessageHtmlLink":"add constexpr"}},{"before":"42b901d720010da96365369a1ba180bf2c73540f","after":"ac0d8ad0bd704a8d4d626501570c4af791217a6d","ref":"refs/heads/private/sgothel/cool_9833_connection_limit","pushedAt":"2024-09-26T13:44:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"sgothel","name":"Sven Göthel","path":"/sgothel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/151063?s=80&v=4"},"commit":{"message":"add constexpr\n\nSigned-off-by: Sven Göthel \nSigned-off-by: Caolán McNamara \nChange-Id: I9f7a6fbbf93381de72471ea878582f8e5db88962","shortMessageHtmlLink":"add constexpr"}},{"before":null,"after":"d8a7f3fa7aa9e0a5b7ff146e9e4ff607f4d0d122","ref":"refs/heads/private/vmiklos/master","pushedAt":"2024-09-26T12:16:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vmiklos","name":"Miklos Vajna","path":"/vmiklos","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13838?s=80&v=4"},"commit":{"message":"cool#9992 doc sign: fix missing enable on the cert chooser description entry\n\nOpen the signatures dialog, add a signature, the certificate chooser\nsub-dialog appears. Select a certificate, that enables e.g. the sign\nbutton, but not the description input field for some reason.\n\nChecking the websocket incoming traffic, the message for the working\nbutton and the broken entry is the same:\njsdialog: { \"jsontype\": \"dialog\", \"action\": \"action\", \"id\": 10, \"data\": { \"control_id\": \"viewcert\", \"action_type\": \"enable\"}}\njsdialog: { \"jsontype\": \"dialog\", \"action\": \"action\", \"id\": 10, \"data\": { \"control_id\": \"description\", \"action_type\": \"enable\"}}\nBut the DOM is different:\n\n
\n\nFix the problem similar to what commit\n0d4e4af2cf174aba3435e44cf76aa5aa834ebb20 (jsdialog: find real input on\nsetText action, 2022-08-24) did for the setText action type: if there is\na child input element, work with that instead.\n\nProbably doing so for the disable case would also make sense, but I this\ndialog never disables input fields, so leave that alone for now.\n\nSigned-off-by: Miklos Vajna \nChange-Id: I94a9a3c5fd846be86a5db175ce93ffff136881de","shortMessageHtmlLink":"cool#9992 doc sign: fix missing enable on the cert chooser descriptio…"}},{"before":"d72b27e7d8a710e20620d7ad064508a1d68e1d9b","after":"3e342155501b1feaec8065ab1c3e5219612c6e5e","ref":"refs/heads/private/skyler/push-qkxxksuysxpw","pushedAt":"2024-09-26T10:23:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Minion3665","name":"Skyler Grey","path":"/Minion3665","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/34243578?s=80&v=4"},"commit":{"message":"fix(android): Use uno command for all clipboard\n\nPreviously on mobile, we were only using the uno commands for some\nclipboard operations - the pasting ones. That's incorrect, as on Android\nand iOS we don't have access to the browser clipboard APIs and should be\nusing the native bits, which for Android intercept these UNO calls and\nuse them to manage the clipboard.\n\nFor iOS, this still falls over - albeit in a slighly different way - but\nthe iOS clipboard code is in core and is nontrivial to fix. I have a\npatch in the works which would make an API similar to\nnavigator.clipboard for iOS/Android (hopefully reducing our pains here)\nbut I don't see a point in not making a tiny, temporary Android fix.\n\nWhen I change the clipboard system's mobile app bits, this will go away\nanyway :)\n\nSigned-off-by: Skyler Grey \nChange-Id: Ifa68b6e956cd5ca75dc8f54b4198a441b2bf1887","shortMessageHtmlLink":"fix(android): Use uno command for all clipboard"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yN1QxNToxMDoxNS4wMDAwMDBazwAAAATCvmgZ","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yNlQxMDoyMzo1MS4wMDAwMDBazwAAAATBVop-"}},"title":"Activity · CollaboraOnline/online"}