Skip to content
  • Carlos Garcia Campos's avatar
    headers: stop interning all header names · 18ef5ed9
    Carlos Garcia Campos authored
    To still optimize the headers handling we now follow an approach similar
    to the WebKit one. We use gperf to generate a fast conversion from
    commonly used name headers to an enum value. Headers are now stored in
    two arrays, one for common headers where the enum value is used as the
    name, and another one for uncommon headers where the name string is
    stored duplicated and g_ascii_strcasecmp() is used for comparisons. Both
    arrays are created on demand with preallocated space for 6 headers. This
    changes a bit the order in which headers are iterated, because we
    iterate the common headers first and then the uncommon ones.
    
    Fixes #111
    18ef5ed9