| 829 | //////////////////////////////////////////////////////////////////// |
| 830 | |
| 831 | TSReturnCode |
| 832 | TSHandleMLocRelease(TSMBuffer bufp, TSMLoc parent, TSMLoc mloc) |
| 833 | { |
| 834 | MIMEFieldSDKHandle *field_handle; |
| 835 | HdrHeapObjImpl *obj = reinterpret_cast<HdrHeapObjImpl *>(mloc); |
| 836 | |
| 837 | if (mloc == TS_NULL_MLOC) { |
| 838 | return TS_SUCCESS; |
| 839 | } |
| 840 | |
| 841 | sdk_assert(sdk_sanity_check_mbuffer(bufp) == TS_SUCCESS); |
| 842 | |
| 843 | switch (obj->m_type) { |
| 844 | case HDR_HEAP_OBJ_URL: |
| 845 | case HDR_HEAP_OBJ_HTTP_HEADER: |
| 846 | case HDR_HEAP_OBJ_MIME_HEADER: |
| 847 | return TS_SUCCESS; |
| 848 | |
| 849 | case HDR_HEAP_OBJ_FIELD_SDK_HANDLE: |
| 850 | field_handle = static_cast<MIMEFieldSDKHandle *>(obj); |
| 851 | if (sdk_sanity_check_field_handle(mloc, parent) != TS_SUCCESS) { |
| 852 | return TS_ERROR; |
| 853 | } |
| 854 | |
| 855 | sdk_free_field_handle(bufp, field_handle); |
| 856 | return TS_SUCCESS; |
| 857 | |
| 858 | default: |
| 859 | ink_release_assert(!"invalid mloc"); |
| 860 | return TS_ERROR; |
| 861 | } |
| 862 | } |
| 863 | |
| 864 | //////////////////////////////////////////////////////////////////// |
| 865 | // |