summaryrefslogtreecommitdiff
path: root/docs/libcurl/libcurl.3
diff options
context:
space:
mode:
authorJay Satiro <raysatiro@yahoo.com>2016-01-04 17:44:39 -0500
committerJay Satiro <raysatiro@yahoo.com>2016-01-04 17:44:39 -0500
commit19ca40100bf5ca5ee8511b193bdb1f8e95152664 (patch)
tree9d003f775d308c8e10c0bd0643bc373f60466a3a /docs/libcurl/libcurl.3
parentb82359643db463fbff063b2d7ebb2e9eb5b33df0 (diff)
downloadcurl-19ca40100bf5ca5ee8511b193bdb1f8e95152664.tar.gz
curl_global_init.3: Add Windows-specific info for init via DLL
- Add to both curl_global_init.3 and libcurl.3 the caveat for Windows that initializing libcurl via a DLL's DllMain or static initializer could cause a deadlock. Bug: https://github.com/bagder/curl/issues/586 Reported-by: marc-groundctl@users.noreply.github.com
Diffstat (limited to 'docs/libcurl/libcurl.3')
-rw-r--r--docs/libcurl/libcurl.33
1 files changed, 3 insertions, 0 deletions
diff --git a/docs/libcurl/libcurl.3 b/docs/libcurl/libcurl.3
index 05034c98e..e7709c04d 100644
--- a/docs/libcurl/libcurl.3
+++ b/docs/libcurl/libcurl.3
@@ -194,6 +194,9 @@ object as the program starts up and the destructor as it terminates. As the
author of this libcurl-using module, you can make the constructor call
\fIcurl_global_init(3)\fP and the destructor call \fIcurl_global_cleanup(3)\fP
and satisfy libcurl's requirements without your user having to think about it.
+(Caveat: If you are initializing libcurl from a Windows DLL you should not
+initialize it from DllMain or a static initializer because Windows holds the
+loader lock during that time and it could cause a deadlock.)
\fIcurl_global_init(3)\fP has an argument that tells what particular parts of
the global constant environment to set up. In order to successfully use any