Index: dcop/dcopserver.cpp
===================================================================
RCS file: /home/kde/kdelibs/dcop/dcopserver.cpp,v
retrieving revision 1.160.2.4
diff -u -p -r1.160.2.4 dcopserver.cpp
--- dcop/dcopserver.cpp 6 Aug 2004 11:16:30 -0000       1.160.2.4
+++ dcop/dcopserver.cpp 2 Mar 2005 13:17:09 -0000
@@ -984,7 +984,7 @@ DCOPServer::DCOPServer(bool _suicide)
       }

    char errormsg[256];
-    int orig_umask = umask(0); /*old libICE's don't reset the umask() they set */
+    int orig_umask = umask(077); /*old libICE's don't reset the umask() they set */
    if (!IceListenForConnections (&numTransports, &listenObjs,
                                 256, errormsg))
       {
Index: dcop/KDE-ICE/Xtranssock.c
===================================================================
RCS file: /home/kde/kdelibs/dcop/KDE-ICE/Xtranssock.c,v
retrieving revision 1.9
diff -u -p -r1.9 Xtranssock.c
--- dcop/KDE-ICE/Xtranssock.c   19 Mar 2003 18:35:52 -0000      1.9
+++ dcop/KDE-ICE/Xtranssock.c   2 Mar 2005 13:17:10 -0000
@@ -937,6 +937,7 @@ TRANS(SocketUNIXCreateListener) (XtransC
#endif

    unlink (sockname.sun_path);
+    (void) umask (oldUmask);

    if ((status = TRANS(SocketCreateListener) (ciptr,
       (struct sockaddr *) &sockname, namelen)) < 0)
@@ -944,7 +945,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
       PRMSG (1,
    "SocketUNIXCreateListener: ...SocketCreateListener() failed\n",
           0, 0, 0);
-       (void) umask (oldUmask);
       return status;
    }

@@ -962,7 +962,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
        PRMSG (1,
        "SocketUNIXCreateListener: Can't allocate space for the addr\n",
           0, 0, 0);
-       (void) umask (oldUmask);
        return TRANS_CREATE_LISTENER_FAILED;
    }

@@ -970,8 +969,6 @@ TRANS(SocketUNIXCreateListener) (XtransC
    ciptr->addrlen = namelen;
    memcpy (ciptr->addr, &sockname, ciptr->addrlen);

-    (void) umask (oldUmask);
-
    return 0;
}