Re[2]: класс Config
От: vadfromnu  
Дата: 21.01.19 16:31
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>яд бы не заморачивался. если надо getenv сделайте себе getenv

_>
_>#include <stdio.h>
_>#include <errno.h>
_>#include <stdlib.h>

_>int getenv(const char* name,int defval) {
_>    long int val; char *end, *text=getenv(name);
_>    if (!text) return defval;
_>    val=strtol(text,&end,10);
_>    if (val==0 && errno) return defval;
_>    if (*end) return defval;
_>    if ((int)val!=val) return defval;
_>    return val;
_>}
_>


В функции прикопан баг, который когда-нибудь бахнет.(Я подрывался) strtol выставит errno при ошибке, но не сбросит его при успехе. Если errno уже выставлен кем-то ранее, то вместо 0 будет возвращаться defval.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.