From ca38baf9a9abb60f42bd5857e82cb9864def7597 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fernando=20Apestegu=C3=ADa?= Date: Fri, 12 Feb 2021 11:05:35 +0000 Subject: [PATCH] MFH: r565005 x11-fm/doublecmd: multiple instances fix * Fix fatal error when multiple instances of the app are executed PR: 253432 Submitted by: bbtruk@users.sourceforge.net (maintainer) --- x11-fm/doublecmd/Makefile | 1 + .../patch-src_platform_unix_upipeserver.pas | 44 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 x11-fm/doublecmd/files/patch-src_platform_unix_upipeserver.pas diff --git a/x11-fm/doublecmd/Makefile b/x11-fm/doublecmd/Makefile index 3303f5c975d2..83017d5fbb3f 100644 --- a/x11-fm/doublecmd/Makefile +++ b/x11-fm/doublecmd/Makefile @@ -3,6 +3,7 @@ PORTNAME= doublecmd PORTVERSION= 0.9.10 +PORTREVISION= 3 CATEGORIES= x11-fm MASTER_SITES= SF/${PORTNAME}/Double%20Commander%20Source PKGNAMESUFFIX= ${LAZARUS_PKGNAMESUFFIX} diff --git a/x11-fm/doublecmd/files/patch-src_platform_unix_upipeserver.pas b/x11-fm/doublecmd/files/patch-src_platform_unix_upipeserver.pas new file mode 100644 index 000000000000..c252924b38b9 --- /dev/null +++ b/x11-fm/doublecmd/files/patch-src_platform_unix_upipeserver.pas @@ -0,0 +1,44 @@ +--- src/platform/unix/upipeserver.pas.orig 2020-12-31 11:38:58 UTC ++++ src/platform/unix/upipeserver.pas +@@ -30,9 +30,13 @@ function GetPipeFileName(const FileName: String; Globa + + implementation + ++{$IF DEFINED(LINUX) OR DEFINED(FREEBSD)} ++ {$DEFINE USE_XDG} ++{$ENDIF} ++ + uses + SimpleIPC, BaseUnix, uPollThread +-{$IF DEFINED(LINUX)} ++{$IF DEFINED(USE_XDG)} + , uXdg + {$ENDIF} + ; +@@ -65,7 +69,7 @@ Type + + function GetPipeFileName(const FileName: String; Global : Boolean): String; + begin +-{$IF DEFINED(LINUX)} ++{$IF DEFINED(USE_XDG)} + Result:= IncludeTrailingBackslash(GetUserRuntimeDir) + FileName; + {$ELSE} + Result:= GetTempDir(Global) + ApplicationName + '-' + IntToStr(fpGetUID) + PathDelim + FileName; +@@ -89,7 +93,7 @@ begin + end; + + constructor TPipeServerComm.Create(AOWner: TSimpleIPCServer); +-{$IF NOT DEFINED(LINUX)} ++{$IF NOT DEFINED(USE_XDG)} + var + Info: TStat; + Directory: String; +@@ -101,7 +105,7 @@ begin + FFileName:= FFileName + '-' + IntToStr(fpGetPID); + if FFileName[1] <> '/' then + FFileName:= GetPipeFileName(FFileName, Owner.Global); +-{$IF NOT DEFINED(LINUX)} ++{$IF NOT DEFINED(USE_XDG)} + // Verify directory owner + Directory:= ExtractFileDir(FFileName); + if not DirectoryExists(Directory) then