--- src/appwin_mk.cpp.orig 2011-08-05 09:46:20.000000000 +0200 +++ src/appwin_mk.cpp 2011-08-05 09:46:46.000000000 +0200 @@ -1172,7 +1172,11 @@ } Atom net_wm_pid = XInternAtom(d, "_NET_WM_PID", 0); +#ifdef FOX_1_7 + pid_t pid=FXProcess::current(); +#else pid_t pid=fxgetpid(); +#endif XChangeProperty(d, win->id(), net_wm_pid, cardinal, 32, PropModeReplace, (const FXuchar*) &pid, sizeof(pid)); FXString hn=GetHostName(); --- src/doctabs.cpp.orig 2011-08-05 09:47:46.000000000 +0200 +++ src/doctabs.cpp 2011-08-05 09:49:30.000000000 +0200 @@ -480,7 +480,12 @@ FXint pid; sscanf((const char*)dnd_data, "%p,%d", &src, &pid); FXFREE(&dnd_data); - if ((pid==fxgetpid())&&(src!=this)) { +#ifdef FOX_1_7 + FXint mypid = FXProcess::current(); +#else + FXint mypid = fxgetpid(); +#endif + if ((pid==mypid)&&(src!=this)) { FXWindow *trg; if (defaultDragCursor==getApp()->getDefaultCursor(DEF_HSPLIT_CURSOR)) { trg=((src->getX()+ev->win_x)-getX())>(getWidth()/2)?this->getNext()->getNext():this; @@ -553,7 +558,12 @@ } case SEL_DND_REQUEST: { FXString fmt=""; - fmt.format("%p,%d", this, fxgetpid()); +#ifdef FOX_1_7 + FXint mypid = FXProcess::current(); +#else + FXint mypid = fxgetpid(); +#endif + fmt.format("%p,%d", this, mypid); FXint len=fmt.length()+1; char*dnd_data=NULL; FXMALLOC(&dnd_data,char,len); @@ -576,7 +586,12 @@ FXApp*a=bar->getApp(); if (!FxteDnDTabType) { FXString DnDName; - DnDName.format("%s_%d", TAB_DND_NAME, fxgetpid()); +#ifdef FOX_1_7 + FXint mypid = FXProcess::current(); +#else + FXint mypid = fxgetpid(); +#endif + DnDName.format("%s_%d", TAB_DND_NAME, mypid); FxteDnDTabType=a->registerDragType(DnDName); } setDefaultDragCursor(a->getDefaultCursor( --- src/luafx.cpp.orig 2011-08-05 09:51:10.000000000 +0200 +++ src/luafx.cpp 2011-08-05 09:51:47.000000000 +0200 @@ -562,7 +562,12 @@ static int pid(lua_State* L) { - lua_pushnumber(L,fxgetpid()); +#ifdef FOX_1_7 + FXint mypid=FXProcess::current(); +#else + FXint mypid=fxgetpid(); +#endif + lua_pushnumber(L,mypid); return(1); }