Desktop file Path= directive changes working dir DE-wide
#75 fix, implemented in #76, unfortunately introduced a new bug. While the fix allows for a proper launching of certain applications, it unfortunately changes the mate-menu's execution context for every application until another launcher containing Path= directive is used. In my case majority of desktop files do not have it leading to launching applications in wrong working directiories after one with a Path= directive is used.
This can be easily demonstrated by launching an application with a desktop launcher containing Path= directive from mate-menu first and launching mate-terminal from mate-menu afterwards. It starts in path of the first launcher instead of shell default one (typically user's home directory)!
A better way to change working directory only for the spawned process probably needs to be implemented. Executing the launched application in a subshell comes to mind: (cd $WD_COMMAND; command) while removing the os.chdir() call in the execution environment. Alternatively (cd $WD_COMMAND && command)can be used for execution to fail if Path=-specified directory doesn't exist.