diff --git a/libctru/source/services/cfgu.c b/libctru/source/services/cfgu.c index 6b89bba..73f8a18 100644 --- a/libctru/source/services/cfgu.c +++ b/libctru/source/services/cfgu.c @@ -8,7 +8,14 @@ static Handle CFGU_handle = 0; Result initCfgu() { - return srvGetServiceHandle(&CFGU_handle, "cfg:u"); + Result ret; + + // cfg:i has the most commands, then cfg:s, then cfg:u + ret = srvGetServiceHandle(&CFGU_handle, "cfg:i"); + if(ret) ret = srvGetServiceHandle(&CFGU_handle, "cfg:s"); + if(ret) ret = srvGetServiceHandle(&CFGU_handle, "cfg:u"); + + return ret; } Result exitCfgu()