Ticket #8423: userlandfs_driver_settings.patch

File userlandfs_driver_settings.patch, 1.2 KB (added by pdziepak, 12 years ago)
  • src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c

    diff --git a/src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c b/src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c
    index f6adb54..82d2966 100644
    a b  
    66
    77
    88#include <OS.h>
    9 #include <directories.h>
     9#include <FindDirectory.h>
    1010#include <driver_settings.h>
    1111
    1212#include <stdlib.h>
    strlcat(char *dst, char const *src, size_t s)  
    3838    return j + i + strlen(src + i);
    3939}
    4040
    41 #define SETTINGS_DIRECTORY kUserSettingsDirectory "/kernel/drivers/"
    4241#define SETTINGS_MAGIC      'DrvS'
    4342
    4443// Those maximum values are independent from the implementation - they
    load_driver_settings(const char *driverName)  
    578577    {
    579578        char path[B_FILE_NAME_LENGTH + 64];
    580579
    581         // ToDo: use the kernel's find_directory for this
    582         strcpy(path, SETTINGS_DIRECTORY);
     580        if (find_directory(B_USER_CONFIG_DIRECTORY, (dev_t)-1, false,
     581            path, sizeof(path)) != B_OK)
     582            return NULL;
     583        strlcat(path, "/kernel/drivers/", sizeof(path));
    583584        strlcat(path, driverName, sizeof(path));
    584585
    585586        file = open(path, O_RDONLY);