[Gambas-bugtracker] Bug #1369: gb.desktop's GetDataDir() sometimes returns incomplete information

bugtracker at gambaswiki.org bugtracker at gambaswiki.org
Mon Jul 23 20:56:00 CEST 2018


http://gambaswiki.org/bugtracker/edit?object=BUG.1369&from=L21haW4-

Tony MOREHEN reported a new bug.

Summary
-------

gb.desktop's GetDataDir() sometimes returns incomplete information

Type             : Bug
Priority         : Medium
Gambas version   : Unknown
Product          : Unknown


Description
-----------

When a Gambas program is run on a distribution that does not support the freedesktop specification or with a restricted environment (ie started through the Exec process function), GetDatDir will only return $HOME/.local/share.  It will not include /usr/local/share or /usr/share.

The GetDataDir code:
Public Sub GetDataDir() As String[]
  
  If Not $aDataDir Then
    $aDataDir = Split(Desktop.DataDir, ":", "", True)
    $aDataDir.Insert(Split(Env["XDG_DATA_DIRS"], ":", "", True))
  Endif
  
  Return $aDataDir
  
End

Desktop.DataDir returns the contents of $XDG_DATA_HOME or $HOME/.local/share if $XDG_DATA_HOME is missing
Similarly, the next line should insert the contents of $XDG_DATA_DIRS or [/usr/local/share, /usr/share] if $XDG_DATA_DIRS is missing.


System information
------------------

[System]
Gambas=3.10.90
OperatingSystem=Linux
Kernel=4.16.8-1-MANJARO
Architecture=x86_64
Distribution=Manjaro Linux
Desktop=XFCE
Theme=Gtk
Language=en_CA.utf8
Memory=15044M

[Libraries]
Cairo=libcairo.so.2.11512.0
Curl=libcurl.so.4.5.0
DBus=libdbus-1.so.3.19.7
GStreamer=libgstreamer-1.0.so.0.1400.0
GTK+2=libgtk-x11-2.0.so.0.2400.32
GTK+3=libgtk-3.so.0.2200.30
OpenGL=libGL.so.1.0.0
Poppler=libpoppler.so.75.0.0
QT4=libQtCore.so.4.8.7
QT5=libQt5Core.so.5.10.1
SDL=libSDL-1.2.so.0.11.4
SQLite=libsqlite3.so.0.8.6

[Environment]
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
DESKTOP_SESSION=xfce
DISPLAY=:0
EDITOR=/usr/bin/nano
GB_GUI=gb.qt4
GDMSESSION=xfce
GLADE_CATALOG_PATH=:
GLADE_MODULE_PATH=:
GLADE_PIXMAP_PATH=:
GTK2_RC_FILES=<home>/.gtkrc-2.0
GTK_MODULES=canberra-gtk-module
HOME=<home>
LANG=en_CA.utf8
LC_ADDRESS=en_CA.UTF-8
LC_IDENTIFICATION=en_CA.UTF-8
LC_MEASUREMENT=en_CA.UTF-8
LC_MONETARY=en_CA.UTF-8
LC_NAME=en_CA.UTF-8
LC_NUMERIC=en_CA.UTF-8
LC_PAPER=en_CA.UTF-8
LC_TELEPHONE=en_CA.UTF-8
LC_TIME=en_CA.UTF-8
LOGNAME=<user>
MAIL=/var/spool/mail/<user>
MOZ_PLUGIN_PATH=/usr/lib/mozilla/plugins
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
PWD=<home>
QT_QPA_PLATFORMTHEME=qt5ct
SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/931,unix/<hostname>:/tmp/.ICE-unix/931
SHELL=/bin/bash
SHLVL=1
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
TZ=:/etc/localtime
USER=<user>
XAUTHORITY=<home>/.Xauthority
XDG_CONFIG_DIRS=/etc/xdg
XDG_CURRENT_DESKTOP=XFCE
XDG_DATA_DIRS=/usr/local/share:/usr/share
XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/<user>
XDG_MENU_PREFIX=xfce-
XDG_RUNTIME_DIR=/run/user/1000
XDG_SEAT=seat0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_SESSION_DESKTOP=xfce
XDG_SESSION_ID=c2
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XDG_SESSION_TYPE=x11
XDG_VTNR=7
_=/usr/bin/xfce4-session




More information about the Bugtracker mailing list