| 2165 | } |
| 2166 | |
| 2167 | static const char * |
| 2168 | pj_emscripten_get_header_value(PJ_CONTEXT *, PROJ_NETWORK_HANDLE *raw_handle, |
| 2169 | const char *header_name, void *) { |
| 2170 | TRACE_FETCH("EmscriptenFileHandle::header_name " << header_name); |
| 2171 | auto handle = reinterpret_cast<EmscriptenFileHandle *>(raw_handle); |
| 2172 | std::string key(header_name); |
| 2173 | std::transform(key.begin(), key.end(), key.begin(), ::tolower); |
| 2174 | const auto it = handle->m_headers.find(key); |
| 2175 | if (it != handle->m_headers.end()) { |
| 2176 | TRACE_FETCH("EmscriptenFileHandle::header_value " << it->second); |
| 2177 | return it->second.c_str(); |
| 2178 | } |
| 2179 | return nullptr; |
| 2180 | } |
| 2181 | |
| 2182 | static void pj_emscripten_close(PJ_CONTEXT *, PROJ_NETWORK_HANDLE *handle, |
| 2183 | void * /*user_data*/) { |