1
0
mirror of https://github.com/clementine-player/Clementine synced 2025-02-03 04:37:33 +01:00
Jim Broadus 36179a7197 Fix gpodder sync memory leaks in success cases.
A closure created by NewClosure that handles Qt signals is destroyed if the
signal object is destroyed, the slot object is destroyed, or the signal is
invoked. In the case where the sender is passed as a shared pointer, the
reference prevents the sender from being destroyed before the closure.

So for closures built to handle responses returned from ApiRequest in
GPodderSync, the closure object and the response object will only be destroyed
after the signal is invoked. In some cases, separate closures are built for
error signals as well. For these, only one closure will be destroyed. The other
closures and the response object will be leaked.

A simple fix for the success cases is to remove the unnecessary error case
closures and directly connect the signals to slots. This is low hanging fruit
and still leaves leaks in the error cases. Those cases will require a more
complete solution to properly manage the life cycle of the response object.
2019-12-29 10:11:29 -08:00
2016-03-11 15:49:26 +01:00
2019-11-14 20:53:46 +00:00
2013-10-04 15:47:22 +10:00
2018-11-21 10:31:17 +00:00
2019-11-14 22:52:20 +00:00
2019-11-13 19:10:39 +01:00
2019-11-16 22:50:56 +01:00
2018-09-17 15:07:11 +01:00
2019-11-14 22:32:05 +00:00
2019-11-14 20:53:46 +00:00
2017-11-06 15:22:24 +03:00
2019-12-16 13:55:11 +00:00

Clementine CircleCI

Clementine is a modern music player and library organizer for Windows, Linux and macOS.

Opening an issue

Ask for a new feature

Please:

  • Check if the new feature is not already implemented (Changelog)
  • Check if another person didn't already open an issue
  • If there is already an opened issue there is no need to comment "+1", it won't help. Instead, you can subscribe to the issue to be notified of anything new about it

Report a bug

Please:

  • Try the latest developer build (http://builds.clementine-player.org/) to see if any bug is still present (Attention, those builds aren't stable so they might not work well and could sometimes break things like user settings). If it works fine even though you see an open issue, please comment on it and explain that the issue has been fixed
  • Check if another person has already opened the same issue to avoid duplicates
  • If there already is an open issue you could comment on it to add precisions about the problem or confirm it
  • In case there isn't, you can open a new issue with an explicit title and as much information as possible (OS, Clementine version, how to reproduce the problem...)
  • Please use http://pastebin.com/ for logs/debug

If there are no answers, it doesn't mean we don't care about your feature request/bug. It just means we can't reproduce the bug or haven't had time to implement it :o)

Compiling from source

Get the code (if you haven't already):

git clone https://github.com/clementine-player/Clementine.git && cd Clementine

Compile and install:

cd bin
cmake ..
make -j8
sudo make install

See the Wiki for more instructions and a list of dependencies: https://github.com/clementine-player/Clementine/wiki/Compiling-from-Source

Description
Clementine è un lettore musicale multipiattaforma con un'interfaccia veloce e facile da usare per ricercare e riprodurre la propria raccolta musicale locale o online e ascoltare radio via internet o i podcast su funkwhale.
https://funkwhale.it Readme
Languages
C++ 95.6%
CMake 2%
Objective-C++ 1.4%
C 0.5%
Objective-C 0.4%