Read в конфиге FVWM

в man fvwm по поводу команды Read написано следующее — This looks for file config in $FVWM_USERDIR and $FVWM_DATADIR directories, as described in Read.

но вот чтобы работала таки $FVWM_DATADIR, т.е. переменная окружения, а не FVWM_DATADIR, т.е. макрос m4, определяемый и используемый на момент compile-time, не неизменяемый в runtime, приходится таки напильничать.

надфиль следующий

--- fvwm-2.6.7/fvwm/read.c.orig   2016-12-07 14:12:09.000000000 +0200
+++ fvwm-2.6.7/fvwm/read.c  2016-12-07 14:19:43.728814143 +0200
@@ -239,8 +239,14 @@
 
                if((f = fopen(full_filename, "r")) == NULL)
                {
-                   full_filename = CatString3(
-                                   FVWM_DATADIR, "/", filename);
+                   char *datadir = getenv ("FVWM_DATADIR");
+                   
+                   if (datadir)
+                           full_filename = CatString3(
+                                           datadir, "/", filename);
+                   else
+                           full_filename = CatString3(
+                                           FVWM_DATADIR, "/", filename);
                        f = fopen(full_filename, "r");
                }
        }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *