summaryrefslogtreecommitdiffstats
path: root/src/detection/cursor/cursor_windows.c
blob: a6814ecc22b06f629bd9209e4bf726ea12e07f11 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "cursor.h"

#include "common/io.h"
#include "common/windows/registry.h"

void ffDetectCursor(FFCursorResult* result) {
    FF_AUTO_CLOSE_FD HANDLE hKey = NULL;
    if (ffRegOpenKeyForRead(HKEY_CURRENT_USER, L"Control Panel\\Cursors", &hKey, &result->error)) {
        if (ffRegReadStrbuf(hKey, NULL, &result->theme, &result->error)) {
            uint32_t cursorBaseSize;
            if (ffRegReadUint(hKey, L"CursorBaseSize", &cursorBaseSize, NULL)) {
                // Not available on Windows 8.1
                ffStrbufAppendUInt(&result->size, cursorBaseSize);
            };
        }
    }
}