[KDE/Mac] How can I change one piece of code in a MacPorts installation?

Ian Wadham iandw.au at gmail.com
Fri Jul 25 07:24:50 UTC 2014


Hi Marko,

On 25/07/2014, at 4:47 PM, Marko Käning wrote:
> you’d create your patch appropriately regarding the path depth, add it to the port’s files folder, add another line to the patchfiles list in the Portfile, increase the revision number by 1 and then you do “sudo port upgrade” and your patch will be installed.

No, I don't want to start an entirely new patch.  I currently have the patch:

/kdedev/macports-kde/dports/kde/kdelibs4/files/fixCrashInKCrash.patch

with contents you sent me:

diff --git a/kdeui/util/kcrash.cpp b/kdeui/util/kcrash.cpp
index 45eb46b..9bb9f44 100644
--- a/kdeui/util/kcrash.cpp
+++ b/kdeui/util/kcrash.cpp
@@ -313,6 +313,10 @@ KCrash::defaultCrashHandler (int sig)
         crashRecursionCounter++;
     }

+#ifndef Q_OS_MAC
+    // On Apple OS X, closing all FDs now will cause a second (SIGILL) crash,
+    // ending with "Unable to start Dr. Konqi". This is because the libdispatch
+    // library, which can manage multi-threading, has some FDs of its own.
 #if !defined(Q_OS_WIN)
     if (!(s_flags & KeepFDs))
         closeAllFDs();
@@ -321,6 +325,7 @@ KCrash::defaultCrashHandler (int sig)
         close(ConnectionNumber(QX11Info::display()));
 # endif
 #endif
+#endif

     if (crashRecursionCounter < 3)
     {

I was thinking of adding some fprintf(stderr, …, …); lines to kcrash.cpp to get
more information about what file paths it is using, etc. and then creating a new
version of fixCrashInKCrash.patch, to replace the above patch contents at
kdedev/macports-kde/dports/kde/kdelibs4/files/fixCrashInKCrash.patch

What do I need to do to get a new version of fixCrashInKCrash.patch
incorporated into MacPorts' kdelibs4, and to keep cycling through that process
until kcrash.cpp and its patch are providing all the info I am looking for?  IOW,
how do you develop and test a patch for MacPorts?  Assuming you don't get
it right first time every time… :-)

Cheers, Ian W.




More information about the kde-mac mailing list