Why is this happening ?

The garbage collector marks all objects that can be deleted if they are not referenced.
Memory leak
- this is just a lost reference, which shows that the object can not be deleted.

The complexity of this bug
is that until a certain time it is not visible and it can not interfere.
There's a good quote from Benjamin Franklin:
“A small leak will sink a great ship."
Memory leaks take the RAM of the application. The amount of raw memory will grow and may one day cause your app to
slow down and crash
. This will lead to user dissatisfaction and most likely the app will be removed...