Bug 454996

Summary: NeoChat freezing/crashing when having a ton of room windows open.
Product: [Applications] NeoChat Reporter: Jan Bidler <janbidler00>
Component: GeneralAssignee: Tobias Fella <fella>
Status: RESOLVED NOT A BUG    
Severity: minor CC: carl
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Microsoft Windows   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Jan Bidler 2022-06-07 20:21:28 UTC
SUMMARY
When having a ton of room windows open (500+) NeoChat will start consuming a lot of memory and start freezing/crashing.


STEPS TO REPRODUCE
1. Start spamming the "Open room in new window" button a few hundred times.

OBSERVED RESULT
After about 250 or so new windows, neochat will start consuming about 5GB of RAM, and after a few more hundred windows will start to become unresponsive and in rare occasions crash. Needs to be killed via task manager, as it otherwise won't respond to close signals.

EXPECTED RESULT
Neither become unresponsive, nor crash

SOFTWARE/OS VERSIONS
Windows: 10 21H1
NeoChat Version: 22.04
KDE Frameworks Version: 5.94.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION
I sadly achieved the crash only once, in all other circumstances, NC simply froze.
Terminal log doesn't seem to show anything useful, but i'll post it too just in case:
```
quotient.jobs: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/rooms/!oXVtZGWmHbaJvGTerl:kde.org/messages
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
qrc:/imports/NeoChat/Menu/RoomListContextMenu.qml:69: Error: Invalid attempt to destroy() an indestructible object
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs.sync: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/sync
quotient.jobs.sync: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/sync
Connected to room "!oXVtZGWmHbaJvGTerl:kde.org" as "@miepee:matrix.org"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
quotient.jobs: Sent GET https://matrix-client.matrix.org/_matrix/client/r0/rooms/!oXVtZGWmHbaJvGTerl:kde.org/messages
Connected to room "!oXVtZGWmHbaJvGTerl:kde.org" as "@miepee:matrix.org"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
file:///C:/Users/narr/AppData/Local/NeoChat/bin/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment"
qrc:/imports/NeoChat/Menu/RoomListContextMenu.qml:69: Error: Invalid attempt to destroy() an indestructible object
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: 200 <- GET https://matrix-client.matrix.org/_matrix/client/r0/rooms/!oXVtZGWmHbaJvGTerl:kde.org/messages
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
quotient.jobs: "GetContentThumbnailJob" stopped with empty network reply
```
Comment 1 Tobias Fella 2022-11-17 23:22:22 UTC
You're opening hundreds of windows, what did you expect, puppies? ;)