[Libreoffice-commits] core.git: Branch 'libreoffice-7-1' - extensions/source sfx2/source

Tor Lillqvist (via logerrit) logerrit at kemper.freedesktop.org
Mon Dec 7 00:41:27 UTC 2020


 extensions/source/macosx/spotlight/OOoContentDataParser.h |    2 -
 extensions/source/macosx/spotlight/OOoContentDataParser.m |    7 -----
 extensions/source/macosx/spotlight/OOoMetaDataParser.h    |    2 -
 extensions/source/macosx/spotlight/OOoMetaDataParser.m    |    6 ----
 sfx2/source/appl/shutdowniconaqua.mm                      |   18 ++------------
 5 files changed, 7 insertions(+), 28 deletions(-)

New commits:
commit fcb8162f979b3828ac5fa1ab5c3711c657658e60
Author:     Tor Lillqvist <tml at iki.fi>
AuthorDate: Sat Dec 5 18:16:37 2020 +0200
Commit:     Tor Lillqvist <tml at collabora.com>
CommitDate: Mon Dec 7 01:40:52 2020 +0100

    Remove remaining bogus use of objc_msgSend()
    
    Follow-up to 5bf61e98b0746a4afeb68a80e54b4eb4bf4ea89f.
    
    Should avoid crashes when running as arm64 code on macOS on arm64.
    
    Change-Id: Id05d182684df82c8a7bf09f6bb7e8ccb01997b62
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107259
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107324

diff --git a/extensions/source/macosx/spotlight/OOoContentDataParser.h b/extensions/source/macosx/spotlight/OOoContentDataParser.h
index 7112497cf7de..dc07a3166122 100644
--- a/extensions/source/macosx/spotlight/OOoContentDataParser.h
+++ b/extensions/source/macosx/spotlight/OOoContentDataParser.h
@@ -19,7 +19,7 @@
 
 #import <Cocoa/Cocoa.h>
 
- at interface OOoContentDataParser : NSObject {
+ at interface OOoContentDataParser : NSObject <NSXMLParserDelegate> {
     // indicates if we are interested in an element's content
     BOOL shouldReadCharacters;
 
diff --git a/extensions/source/macosx/spotlight/OOoContentDataParser.m b/extensions/source/macosx/spotlight/OOoContentDataParser.m
index d3ecf16ffaab..e1f51e5b90c7 100644
--- a/extensions/source/macosx/spotlight/OOoContentDataParser.m
+++ b/extensions/source/macosx/spotlight/OOoContentDataParser.m
@@ -47,12 +47,7 @@
 
     NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];
 
-    // Once again...
-    // class 'OOoContentDataParser' does not implement the 'NSXMLParserDelegate' protocol
-    // So instead of this:
-    // [parser setDelegate:self];
-    // do this:
-    ((id (*)(id, SEL, ...))objc_msgSend)(parser, @selector(setDelegate:), self);
+    [parser setDelegate:self];
 
     [parser setShouldResolveExternalEntities:NO];
     [parser parse];
diff --git a/extensions/source/macosx/spotlight/OOoMetaDataParser.h b/extensions/source/macosx/spotlight/OOoMetaDataParser.h
index 5db7634cce0c..85d48b1735d7 100644
--- a/extensions/source/macosx/spotlight/OOoMetaDataParser.h
+++ b/extensions/source/macosx/spotlight/OOoMetaDataParser.h
@@ -20,7 +20,7 @@
 #import <Cocoa/Cocoa.h>
 
 
- at interface OOoMetaDataParser : NSObject {
+ at interface OOoMetaDataParser : NSObject <NSXMLParserDelegate> {
     //indicates if content should be read
     BOOL shouldReadCharacters;
     //indicates if the current element is a custom metadata tag
diff --git a/extensions/source/macosx/spotlight/OOoMetaDataParser.m b/extensions/source/macosx/spotlight/OOoMetaDataParser.m
index 2b4dac82c555..1e7cac685b88 100644
--- a/extensions/source/macosx/spotlight/OOoMetaDataParser.m
+++ b/extensions/source/macosx/spotlight/OOoMetaDataParser.m
@@ -91,11 +91,7 @@ static NSDictionary *metaXML2MDIKeys;
 
     NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];
 
-    // class 'OOoMetaDataParser' does not implement the 'NSXMLParserDelegate' protocol
-    // So instead of this:
-    // [parser setDelegate:self];
-    // do this:
-    ((id (*)(id, SEL, ...))objc_msgSend)(parser, @selector(setDelegate:), self);
+    [parser setDelegate:self];
 
     [parser setShouldResolveExternalEntities:NO];
     [parser parse];
diff --git a/sfx2/source/appl/shutdowniconaqua.mm b/sfx2/source/appl/shutdowniconaqua.mm
index 3fa4d61443a0..028a9a6e64ec 100644
--- a/sfx2/source/appl/shutdowniconaqua.mm
+++ b/sfx2/source/appl/shutdowniconaqua.mm
@@ -146,7 +146,7 @@ class RecentFilesStringLength : public ::cppu::WeakImplHelper< css::util::XStrin
 
 }
 
- at interface RecentMenuDelegate : NSObject
+ at interface RecentMenuDelegate : NSObject <NSMenuDelegate>
 {
     std::vector< RecentMenuEntry >* m_pRecentFilesItems;
 }
@@ -347,16 +347,7 @@ static void appendRecentMenu( NSMenu* i_pMenu, NSMenu* i_pDockMenu, const OUStri
     [pItem setEnabled: YES];
     NSMenu* pRecentMenu = [[NSMenu alloc] initWithTitle: getAutoreleasedString( i_rTitle ) ];
 
-    // When compiling against 10.6 SDK, we get the warning:
-    // class 'RecentMenuDelegate' does not implement the 'NSMenuDelegate' protocol
-
-    // No idea if that is a bogus warning, or if the way this is
-    // implemented just is so weird that the compiler gets
-    // confused. Anyway, to avoid warnings, instead of this:
-    // [pRecentMenu setDelegate: pRecentDelegate];
-    // do this:
-    reinterpret_cast<id (*)(id, SEL, ...)>(objc_msgSend)(
-        pRecentMenu, @selector(setDelegate:), pRecentDelegate);
+    [pRecentMenu setDelegate: pRecentDelegate];
 
     [pRecentMenu setAutoenablesItems: NO];
     [pItem setSubmenu: pRecentMenu];
@@ -371,10 +362,7 @@ static void appendRecentMenu( NSMenu* i_pMenu, NSMenu* i_pDockMenu, const OUStri
         [pItem setEnabled: YES];
         pRecentMenu = [[NSMenu alloc] initWithTitle: getAutoreleasedString( i_rTitle ) ];
 
-        // See above
-        // [pRecentMenu setDelegate: pRecentDelegate];
-        reinterpret_cast<id (*)(id, SEL, ...)>(objc_msgSend)(
-            pRecentMenu, @selector(setDelegate:), pRecentDelegate);
+        [pRecentMenu setDelegate: pRecentDelegate];
 
         [pRecentMenu setAutoenablesItems: NO];
         [pItem setSubmenu: pRecentMenu];


More information about the Libreoffice-commits mailing list