network: httpd: fix lock usage of URL callbacks
This lock was left unused in the current code-base. Previously locking
in httpd_UrlCatch
for nothing.
Locking before calling the callbacks allows non-racy modifications of the callback function pointer and/or opaque data after the start of the HTTPD thread-loop and I think that it was the original intent of the mutex.
This potential race-condition was encountered on the development of the new HLS sout module while trying to hot-swap the httpd URL catch callback context.
Here's a sample of the racy use-case:
httpd_host_t *host = vlc_http_HostNew(obj);
httpd_url_t *url = httpd_UrlNew("/index.html", host, NULL, NULL);
const char *sys = "value1";
httpd_UrlCatch(url, HTTPD_MSG_GET, pf_callback, sys);
// ... Normal program execution ...
const char *new_sys = "value2";
// New context on the HTTP url callback.
httpd_UrlCatch(url, HTTPD_MSG_GET, pf_callback, new_sys);