PR# 19812 MEMORY_STEAM.dispose
Problem Report Summary
Submitter: gobobe
Category: EiffelBase
Priority: Low
Date: 2021/11/07
Class: Bug
Severity: Non-critical
Number: 19812
Release: 20.11
Confidential: No
Status: Closed
Responsible:
Environment: win
Synopsis: MEMORY_STEAM.dispose
Description
I got this crash at the end of the execution of one of my Gobo tests: ~~~~~~~~~~~~~~~~~~~ xslt: PANIC: Unexpected harmful signal (Segmentation violation) ... xslt: system execution failed. Following is the set of recorded exceptions. NB: The raised panic may have induced completely inconsistent information: ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- RUN-TIME root's set-up Unexpected harmful signal (Segmentation violation): <0000000000000000> Eiffel run-time panic. Bye ------------------------------------------------------------------------------- ~~~~~~~~~~~~~~~~~~~ See https://github.com/gobo-eiffel/gobo/runs/4131030346?check_suite_focus=true. I suspect that this is happening when the Eiffel runtime is cleaning up memory before exit. So I looked for implementations of `dispose` in the Gobo code, but found none which could explain this crash. But while looking at implementations of `dispose`, I found the one in class `MEMORY_STREAM` which I think is wrong. It eventually calls `internal_area` which is a reference, so that's bad. And `internal_area` of type `MANAGED_POINTER` already has its own `dispose`. So I think that the `dispose` in `MEMORY_STREAM` should be removed. I know that this class is obsolete, but I just wanted to point it out to you anyway. -- Eric Bezault
To Reproduce
Problem Report Interactions
I received the past 3 or 4 notifications correctly after I raised the issue. Thanks. -- Eric Bezault
Do you still have the email notification issue ? Lately, we had a few email sending issues that are now fixed. Can you confirm you got a notification for this answer?
I'm not using this class. I just came across this class when looking for redefinitions of `dispose`. Also, I don't receive notifications anymore when there are activities on my problem reports. I used to go to my spam folders from time to time, but these days I receive nothing at all. -- Eric Bezault
Thanks, the code was now removed. I would also suggest to update the related code using this obsolete class, as this class may be removed in any future release.