| 923 | } |
| 924 | |
| 925 | TSReturnCode |
| 926 | TSUrlClone(TSMBuffer dest_bufp, TSMBuffer src_bufp, TSMLoc src_url, TSMLoc *locp) |
| 927 | { |
| 928 | sdk_assert(sdk_sanity_check_mbuffer(src_bufp) == TS_SUCCESS); |
| 929 | sdk_assert(sdk_sanity_check_mbuffer(dest_bufp) == TS_SUCCESS); |
| 930 | sdk_assert(sdk_sanity_check_url_handle(src_url) == TS_SUCCESS); |
| 931 | sdk_assert(sdk_sanity_check_null_ptr(locp) == TS_SUCCESS); |
| 932 | |
| 933 | if (!isWriteable(dest_bufp)) { |
| 934 | return TS_ERROR; |
| 935 | } |
| 936 | |
| 937 | HdrHeap *s_heap, *d_heap; |
| 938 | URLImpl *s_url, *d_url; |
| 939 | |
| 940 | s_heap = reinterpret_cast<HdrHeapSDKHandle *>(src_bufp)->m_heap; |
| 941 | d_heap = reinterpret_cast<HdrHeapSDKHandle *>(dest_bufp)->m_heap; |
| 942 | s_url = reinterpret_cast<URLImpl *>(src_url); |
| 943 | |
| 944 | d_url = url_copy(s_url, s_heap, d_heap, (s_heap != d_heap)); |
| 945 | *locp = reinterpret_cast<TSMLoc>(d_url); |
| 946 | return TS_SUCCESS; |
| 947 | } |
| 948 | |
| 949 | TSReturnCode |
| 950 | TSUrlCopy(TSMBuffer dest_bufp, TSMLoc dest_obj, TSMBuffer src_bufp, TSMLoc src_obj) |