[Libreoffice-commits] core.git: vcl/aqua vcl/Library_vcl.mk
Tor Lillqvist
tml at iki.fi
Mon Aug 19 00:59:25 PDT 2013
vcl/Library_vcl.mk | 4 ++++
vcl/aqua/source/app/salinst.cxx | 2 ++
2 files changed, 6 insertions(+)
New commits:
commit bd507a0d093b7d5239992440a40d0a7453b38207
Author: Tor Lillqvist <tml at iki.fi>
Date: Mon Aug 19 10:32:34 2013 +0300
fdo#39007: Brute force fix: Unlink a potential restorecount.plist file
It is not completely clear to me whether we really still might be
leaving such files around. After all, we now in *two* places (at least
in current master) tell our NSWindows to not be
restorable... Norbert's code in AquaSalFrame::initWindowAndView()
*and* Herbert Dürr's code in -[SalFrameWindow initWithSalFrame:].
On the other hand, Cocoa does seem to create the file and keep it
around for a short while before removing it (in responce to our
setRestorable:NO calls?), so there is a slight time window where if LO
crashes, the file will be left around.
Such a file might also be around from an older LO version, or manually
planted there by somebody wanting to reproduce the bug...
Of course, the *real* fix for this problem would be to make LO a
*proper* Cocoa document centric application, that would use
NSDocument, NSApplication etc like native applications are supposed
to, and that *would* handle window restoration the Cocoa way. I.e.,
work with the system instead of against it.
Change-Id: I9ed058130ddddf49cf0221d899bef3e2654589c7
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index 363f82a..ed9a0bd 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -352,6 +352,10 @@ $(eval $(call gb_Library_add_cxxflags,vcl,\
$(gb_OBJCXXFLAGS) \
))
+$(eval $(call gb_Library_add_defs,vcl,\
+ -DMACOSX_BUNDLE_IDENTIFIER=\"$(MACOSX_BUNDLE_IDENTIFIER)\" \
+))
+
ifeq ($(ENABLE_CORETEXT),YES)
$(eval $(call gb_Library_add_defs,vcl,\
diff --git a/vcl/aqua/source/app/salinst.cxx b/vcl/aqua/source/app/salinst.cxx
index 0f14d00..89ce263 100644
--- a/vcl/aqua/source/app/salinst.cxx
+++ b/vcl/aqua/source/app/salinst.cxx
@@ -184,6 +184,8 @@ static void initNSApp()
sal_Bool ImplSVMainHook( int * pnInit )
{
+ unlink([[NSString stringWithFormat:@"%@/Library/Saved Application State/%s.savedState/restorecount.plist", NSHomeDirectory(), MACOSX_BUNDLE_IDENTIFIER] UTF8String]);
+
gpnInit = pnInit;
bNoSVMain = false;
More information about the Libreoffice-commits
mailing list