static size_t header_write_callback()

in adapter.cpp [272:301]


static size_t header_write_callback(char* buffer, size_t size, size_t nmemb, map<string,string>* write_buf)
{   
    size_t sizes = size * nmemb;

    if (buffer == NULL)
    {   
        return 0;
    }
    size_t colonIndex;
    for(colonIndex=1; colonIndex<sizes-2; colonIndex++)
    {   
        if(buffer[colonIndex] == ':')break;
    }
    if(colonIndex<sizes-2)
    {   
        unsigned long leftSpaceNum, rightSpaceNum;
        for(leftSpaceNum=0; leftSpaceNum<colonIndex-1; leftSpaceNum++)
        {   
            if(buffer[colonIndex-leftSpaceNum-1] != ' ')
                break;
        }
        for(rightSpaceNum=0; rightSpaceNum<sizes-colonIndex-1-2; rightSpaceNum++)
        {   
            if(buffer[colonIndex+rightSpaceNum+1] != ' ')
                break;
        }
        (*write_buf)[string(buffer,0,colonIndex-leftSpaceNum)] = string(buffer, colonIndex+1+rightSpaceNum, sizes-colonIndex-1-2-rightSpaceNum);
    }
    return sizes;
}