gug-bg-herd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [kazehakase]: FTBFS под GNU/Hurd: mozilla.cpp:132: error: 'PATH_MAX'


From: Dimitur Kirov
Subject: Re: [kazehakase]: FTBFS под GNU/Hurd: mozilla.cpp:132: error: 'PATH_MAX' was not declared in this scope
Date: Thu, 20 Aug 2009 18:27:14 +0000

Dimitur Kirov <address@hidden> wrote:
> 
> Yavor Doganov <address@hidden> wrote:
> > if (strlen(xpcomPath) < allocated -1)
> Не знам по време на цикъла дали NS_FAILED(rv) е истина, в случай че
> дължината на пътят е по-малка от 'allocated'. Ако може да използваш
> NS_FAILED вместо strlen би било по-добре
да, според функцията [1] в случай, че големината на xpcomPath не стига,
върнатият резултат ще е NS_ERROR_FILE_NAME_TOO_LONG

Значи проверката просто става:
...
if (NS_FAILED(rv)) {
        if (rv != NS_ERROR_FILE_NAME_TOO_LONG) {
                // грешка, която не е свързана с дължината на файла
                // няма нужда да продължаваме да циклим
                goto out;
        }
} else {
        // всичко е наред
        break;
}
...
така няма нужда от strlen

Още нещо:
От кръпката личи, че етикетът out винаги ще се изпълни, което означава,
че функцията винаги връща FALSE. Според мен мястото на този етикет е
някъде накрая, след 'return TRUE'. Така ще сме сигурни, че се изпълнява
само когато е извикан при грешка.


[1] http://mxr.mozilla.org/mozilla/source/xpcom/glue/nsGREGlue.cpp#150




reply via email to

[Prev in Thread] Current Thread [Next in Thread]