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                      |   16 ++------------
 5 files changed, 7 insertions(+), 26 deletions(-)

New commits:
commit 63d6ba7df8b55d6673a23996bc67058bb94757c4
Author:     Tor Lillqvist <t...@iki.fi>
AuthorDate: Sat Dec 5 18:16:37 2020 +0200
Commit:     Tor Lillqvist <t...@collabora.com>
CommitDate: Sat Dec 5 20:49:41 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/+/107262
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Tor Lillqvist <t...@collabora.com>

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>
 
-@interface OOoContentDataParser : NSObject {
+@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>
 
 
-@interface OOoMetaDataParser : NSObject {
+@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 7b6b543dd19b..1f0b2c2224f4 100644
--- a/sfx2/source/appl/shutdowniconaqua.mm
+++ b/sfx2/source/appl/shutdowniconaqua.mm
@@ -142,7 +142,7 @@ class RecentFilesStringLength : public 
::cppu::WeakImplHelper< css::util::XStrin
         }
 };
 
-@interface RecentMenuDelegate : NSObject
+@interface RecentMenuDelegate : NSObject <NSMenuDelegate>
 {
     std::vector< RecentMenuEntry >* m_pRecentFilesItems;
 }
@@ -343,15 +343,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:
-    ((id (*)(id, SEL, ...))objc_msgSend)(pRecentMenu, @selector(setDelegate:), 
pRecentDelegate);
+    [pRecentMenu setDelegate: pRecentDelegate];
 
     [pRecentMenu setAutoenablesItems: NO];
     [pItem setSubmenu: pRecentMenu];
@@ -366,9 +358,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];
-        ((id (*)(id, SEL, ...))objc_msgSend)(pRecentMenu, 
@selector(setDelegate:), pRecentDelegate);
+        [pRecentMenu setDelegate: pRecentDelegate];
 
         [pRecentMenu setAutoenablesItems: NO];
         [pItem setSubmenu: pRecentMenu];
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to