| Summary: | quartz window: explicit release or not? | ||
|---|---|---|---|
| Product: | SDL | Reporter: | Ryan C. Gordon <icculus> |
| Component: | video | Assignee: | Ryan C. Gordon <icculus> |
| Status: | RESOLVED FIXED | QA Contact: | Sam Lantinga <slouken> |
| Severity: | blocker | ||
| Priority: | P2 | CC: | max |
| Version: | HG 1.2 | ||
| Hardware: | PowerPC | ||
| OS: | Mac OS X (All) | ||
|
Description
Ryan C. Gordon
2006-01-27 11:06:53 UTC
Setting Sam as "QA Contact" on all bugs (even resolved ones) so he'll definitely be in the loop to any further discussion here about SDL. --ryan. All I can say is that I just verified that [qz_window isReleasedWhenClosed] returns true (at the end of QZ_SetVideoWindowed, that is). It definitely sounds like Bob's is right. Can you verify? Can someone confirm this for 1.2.10 release?
I added some debug printf()s ...
printf("pre close: %d\n", (int) [ qz_window retainCount ] );
[ qz_window close ];
printf("post close: %d\n", (int) [ qz_window retainCount ] );
[ qz_window release ];
printf("post release: %d\n", (int) [ qz_window retainCount ] );
This produces:
pre close: 1
post close: 1
objc: FREED(id): message retainCount sent to freed object=0x11371d0
Trace/BPT trap
The Apple docs say release-when-closed is ignored if the window has a controller...I guess we do in this case. So the explicit release, as it is in svn right now, is correct. No patch needed.
--ryan.
|