view mupdf-source/platform/java/jni/dom.c @ 13:d6cbc8049ab0

Increase verbosity level for builds
author Franz Glasner <fzglas.hg@dom66.de>
date Wed, 17 Sep 2025 20:31:46 +0200
parents b50eed0cc0ef
children
line wrap: on
line source

// Copyright (C) 2004-2025 Artifex Software, Inc.
//
// This file is part of MuPDF.
//
// MuPDF is free software: you can redistribute it and/or modify it under the
// terms of the GNU Affero General Public License as published by the Free
// Software Foundation, either version 3 of the License, or (at your option)
// any later version.
//
// MuPDF is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
// FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
// details.
//
// You should have received a copy of the GNU Affero General Public License
// along with MuPDF. If not, see <https://www.gnu.org/licenses/agpl-3.0.en.html>
//
// Alternative licensing terms are available from the licensor.
// For commercial licensing, see <https://www.artifex.com/> or contact
// Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco,
// CA 94129, USA, for further information.

/* DOM interface */

JNIEXPORT void JNICALL
FUN(DOM_finalize)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *xml = from_DOM_safe(env, self);
	if (!ctx || !xml) return;
	(*env)->SetLongField(env, self, fid_DOM_pointer, 0);
	fz_drop_xml(ctx, xml);
}

JNIEXPORT void JNICALL
FUN(DOM_insertBefore)(JNIEnv *env, jobject self, jobject jxml)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *xml = from_DOM_safe(env, jxml);

	fz_try(ctx)
		fz_dom_insert_before(ctx, me, xml);
	fz_catch(ctx)
		jni_rethrow_void(env, ctx);
}

JNIEXPORT void JNICALL
FUN(DOM_insertAfter)(JNIEnv *env, jobject self, jobject jxml)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *xml = from_DOM_safe(env, jxml);

	fz_try(ctx)
		fz_dom_insert_after(ctx, me, xml);
	fz_catch(ctx)
		jni_rethrow_void(env, ctx);
}

JNIEXPORT void JNICALL
FUN(DOM_appendChild)(JNIEnv *env, jobject self, jobject jxml)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *xml = from_DOM_safe(env, jxml);

	fz_try(ctx)
		fz_dom_append_child(ctx, me, xml);
	fz_catch(ctx)
		jni_rethrow_void(env, ctx);
}

JNIEXPORT void JNICALL
FUN(DOM_remove)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);

	fz_try(ctx)
		fz_dom_remove(ctx, me);
	fz_catch(ctx)
		jni_rethrow_void(env, ctx);
}

JNIEXPORT jobject JNICALL
FUN(DOM_clone)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *clone = NULL;

	fz_var(clone);

	fz_try(ctx)
		clone = fz_dom_clone(ctx, me);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, clone);
}

JNIEXPORT jobject JNICALL
FUN(DOM_parent)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *parent = NULL;

	fz_var(parent);

	fz_try(ctx)
		parent = fz_dom_clone(ctx, me);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, parent);
}

JNIEXPORT jobject JNICALL
FUN(DOM_firstChild)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *child = NULL;

	fz_var(child);

	fz_try(ctx)
		child = fz_dom_first_child(ctx, me);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, child);
}

JNIEXPORT jobject JNICALL
FUN(DOM_next)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *next = NULL;

	fz_var(next);

	fz_try(ctx)
		next = fz_dom_next(ctx, me);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, next);
}

JNIEXPORT jobject JNICALL
FUN(DOM_previous)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	fz_xml *prev = NULL;

	fz_var(prev);

	fz_try(ctx)
		prev = fz_dom_previous(ctx, me);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, prev);
}

JNIEXPORT jobject JNICALL
FUN(DOM_addAttribute)(JNIEnv *env, jobject self, jstring jatt, jstring jval)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	const char *att = NULL;
	const char *val = NULL;

	if (jatt)
	{
		att = (*env)->GetStringUTFChars(env, jatt, NULL);
		if (!att) jni_throw_run(env, "cannot get characters in attribute name");
	}
	if (jval)
	{
		val = (*env)->GetStringUTFChars(env, jval, NULL);
		if (!val)
		{
			if (jatt)
				(*env)->ReleaseStringUTFChars(env, jatt, att);
			jni_throw_run(env, "cannot get characters in attribute value");
		}
	}

	fz_try(ctx)
		fz_dom_add_attribute(ctx, me, att, val);
	fz_always(ctx)
	{
		if (jval)
			(*env)->ReleaseStringUTFChars(env, jval, val);
		if (jatt)
			(*env)->ReleaseStringUTFChars(env, jatt, att);
	}
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return self;
}

JNIEXPORT jobject JNICALL
FUN(DOM_removeAttribute)(JNIEnv *env, jobject self, jstring jatt)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);
	const char *att = NULL;

	if (!jatt)
		return NULL;

	att = (*env)->GetStringUTFChars(env, jatt, NULL);
	if (!att) jni_throw_run(env, "cannot get characters in attribute name");

	fz_try(ctx)
		fz_dom_remove_attribute(ctx, dom, att);
	fz_always(ctx)
		(*env)->ReleaseStringUTFChars(env, jatt, att);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return self;
}

JNIEXPORT jstring JNICALL
FUN(DOM_attribute)(JNIEnv *env, jobject self, jstring jatt)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);
	const char *att = NULL;
	const char *val = NULL;

	if (!jatt)
		return NULL;

	att = (*env)->GetStringUTFChars(env, jatt, NULL);
	if (!att) jni_throw_run(env, "cannot get characters in attribute name");

	fz_try(ctx)
		val = fz_dom_attribute(ctx, dom, att);
	fz_always(ctx)
		(*env)->ReleaseStringUTFChars(env, jatt, att);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_String_safe(ctx, env, val);
}

JNIEXPORT jobjectArray JNICALL
FUN(DOM_attributes)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);
	const char *att = NULL;
	const char *val = NULL;
	jobjectArray jarr;
	jstring jatt, jval;
	jobject jobj;
	size_t i;
	int n;

	fz_try(ctx)
	{
		n = 0;
		while (1)
		{
			val = fz_dom_get_attribute(ctx, dom, n, &att);
			if (att == NULL)
				break;
			n++;
		}
	}
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	jarr = (*env)->NewObjectArray(env, n, cls_DOMAttribute, NULL);
	if (!jarr) jni_throw_run(env, "cannot create attribute array");

	for (i = 0; i < (size_t)n; i++)
	{
		fz_try(ctx)
			val = fz_dom_get_attribute(ctx, dom, i, &att);
		fz_catch(ctx)
			jni_rethrow(env, ctx);

		jobj = (*env)->NewObject(env, cls_DOMAttribute, mid_DOMAttribute_init);
		if (!jobj) jni_throw_run(env, "cannot create DOMAttribute");
		jatt = (*env)->NewStringUTF(env, att);
		if (!jatt) jni_throw_run(env, "cannot create String from attribute");
		if (val == NULL)
			jval = NULL;
		else {
			jval = (*env)->NewStringUTF(env, val);
			if (!jval) jni_throw_run(env, "cannot create String from attribute");
		}
		(*env)->SetObjectField(env, jobj, fid_DOMAttribute_attribute, jatt);
		(*env)->SetObjectField(env, jobj, fid_DOMAttribute_value, jval);
		(*env)->SetObjectArrayElement(env, jarr, i, jobj);
		if ((*env)->ExceptionCheck(env))
			return NULL;
	}

	return jarr;
}

JNIEXPORT jobject JNICALL
FUN(DOM_find)(JNIEnv *env, jobject self, jstring jtag, jstring jatt, jstring jval)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	const char *tag = NULL;
	const char *att = NULL;
	const char *val = NULL;
	fz_xml *xml;

	if (jtag)
	{
		tag = (*env)->GetStringUTFChars(env, jtag, NULL);
		if (!tag) jni_throw_run(env, "cannot get characters in tag");
	}
	if (jatt)
	{
		att = (*env)->GetStringUTFChars(env, jatt, NULL);
		if (!att)
		{
			if (jtag)
				(*env)->ReleaseStringUTFChars(env, jtag, tag);
			jni_throw_run(env, "cannot get characters in attribute name");
		}
	}
	if (jval)
	{
		val = (*env)->GetStringUTFChars(env, jval, NULL);
		if (!val)
		{
			if (jatt)
				(*env)->ReleaseStringUTFChars(env, jatt, att);
			if (jtag)
				(*env)->ReleaseStringUTFChars(env, jtag, tag);
			jni_throw_run(env, "cannot get characters in attribute value");
		}
	}

	fz_try(ctx)
		xml = fz_dom_find(ctx, me, tag, att, val);
	fz_always(ctx)
	{
		if (jval)
			(*env)->ReleaseStringUTFChars(env, jval, val);
		if (jatt)
			(*env)->ReleaseStringUTFChars(env, jatt, att);
		if (jtag)
			(*env)->ReleaseStringUTFChars(env, jtag, tag);
	}
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, xml);
}

JNIEXPORT jobject JNICALL
FUN(DOM_findNext)(JNIEnv *env, jobject self, jstring jtag, jstring jatt, jstring jval)
{
	fz_context *ctx = get_context(env);
	fz_xml *me = from_DOM_safe(env, self);
	const char *tag = NULL;
	const char *att = NULL;
	const char *val = NULL;
	fz_xml *xml;

	if (jtag)
	{
		tag = (*env)->GetStringUTFChars(env, jtag, NULL);
		if (!tag) jni_throw_run(env, "cannot get characters in tag");
	}
	if (jatt)
	{
		att = (*env)->GetStringUTFChars(env, jatt, NULL);
		if (!att)
		{
			if (jtag)
				(*env)->ReleaseStringUTFChars(env, jtag, tag);
			jni_throw_run(env, "cannot get characters in attribute name");
		}
	}
	if (jval)
	{
		val = (*env)->GetStringUTFChars(env, jval, NULL);
		if (!val)
		{
			if (jatt)
				(*env)->ReleaseStringUTFChars(env, jatt, att);
			if (jtag)
				(*env)->ReleaseStringUTFChars(env, jtag, tag);
			jni_throw_run(env, "cannot get characters in attribute value");
		}
	}

	fz_try(ctx)
		xml = fz_dom_find_next(ctx, me, tag, att, val);
	fz_always(ctx)
	{
		if (jval)
			(*env)->ReleaseStringUTFChars(env, jval, val);
		if (jatt)
			(*env)->ReleaseStringUTFChars(env, jatt, att);
		if (jtag)
			(*env)->ReleaseStringUTFChars(env, jtag, tag);
	}
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, xml);
}

JNIEXPORT jobject JNICALL
FUN(DOM_body)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);

	return to_DOM_safe(ctx, env, fz_dom_body(ctx, dom));
}

JNIEXPORT jobject JNICALL
FUN(DOM_document)(JNIEnv *env, jobject self)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);

	return to_DOM_safe(ctx, env, fz_dom_document_element(ctx, dom));
}

JNIEXPORT jobject JNICALL
FUN(DOM_createTextNode)(JNIEnv *env, jobject self, jstring jtext)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);
	const char *text = NULL;
	fz_xml *elt;

	if (!jtext)
		return NULL;

	text = (*env)->GetStringUTFChars(env, jtext, NULL);
	if (!text) jni_throw_run(env, "cannot get characters in text string");

	fz_try(ctx)
		elt = fz_dom_create_text_node(ctx, dom, text);
	fz_always(ctx)
		(*env)->ReleaseStringUTFChars(env, jtext, text);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, elt);
}

JNIEXPORT jobject JNICALL
FUN(DOM_createElement)(JNIEnv *env, jobject self, jstring jtag)
{
	fz_context *ctx = get_context(env);
	fz_xml *dom = from_DOM_safe(env, self);
	const char *tag = NULL;
	fz_xml *elt;

	if (!jtag)
		return NULL;

	tag = (*env)->GetStringUTFChars(env, jtag, NULL);
	if (!tag) jni_throw_run(env, "cannot get characters in tag");

	fz_try(ctx)
		elt = fz_dom_create_element(ctx, dom, tag);
	fz_always(ctx)
		(*env)->ReleaseStringUTFChars(env, jtag, tag);
	fz_catch(ctx)
		jni_rethrow(env, ctx);

	return to_DOM_safe(ctx, env, elt);
}
PKr/[(a7,= PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.cirrus.ymlUThPKr/[O[@ PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.dir-locals.elUThPKr/[wV@ PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.gitattributesUThPKr/[ -I PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.github/CONTRIBUTING.mdUThPKr/[L9rE PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.github/FUNDING.ymlUThPKr/[lH PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.github/ISSUE_TEMPLATEUThPKr/[)M/B . PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.github/lock.ymlUThPKr/[WIC l PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.github/stale.ymlUThPKr/[ OT< / PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.gitignoreUThPKr/[; PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.lgtm.ymlUThPKr/[ : dPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.mailmapUThPKr/[ZdF kPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.travis-iconv-env.shUThPKr/[ h Y= BPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/.travis.ymlUThPKr/[U'B9 #PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CHANGESUThPKr/[ %!"P $PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/CMakeConfigurableFile.inUThPKr/[Q[l} N %PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/CurlSymbolHiding.cmakeUThPKr/[(. 1C )PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/CurlTests.cUThPKr/[1 5 H 5PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindBrotli.cmakeUThPKr/[䠹G 57PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindCARES.cmakeUThPKr/[Ժw $E ^9PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindGSS.cmakeUThPKr/[7OI QDPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindLibSSH2.cmakeUThPKr/[ I FPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindMbedTLS.cmakeUThPKr/[R"w?I %HPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/FindNGHTTP2.cmakeUThPKr/[4 V D IPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/Macros.cmakeUThPKr/[[GM77%H NPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/OtherTests.cmakeUThPKr/[ŦX T WPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/Platforms/WindowsCache.cmakeUThPKr/[i`G [PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/Utilities.cmakeUThPKr/[L2P b\PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/cmake_uninstall.cmake.inUThPKr/[ "1L ^PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMake/curl-config.cmake.inUThPKr/[4!@ _PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/CMakeLists.txtUThPKr/[%_@9 UPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/COPYINGUThPKr/[3;: ]PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/GIT-INFOUThPKr/[Z~9B TPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/MacOSX-FrameworkUThPKr/[`Uv=b= PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/Makefile.amUThPKr/[I ? PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/Makefile.distUThPKr/[Qg8 ߹PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/READMEUThPKr/[Qݪ>; PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/README.mdUThPKr/[̛$? ePyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/RELEASE-NOTESUThPKr/[r= PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/SECURITY.mdUThPKr/[iC)1i> PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/acinclude.m4UThPKr/[73!> PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/appveyor.ymlUThPKr/[ҭrOg8; PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/buildconfUThPKr/[\p? PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/buildconf.batUThPKr/[HZqE-> #PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/configure.acUThPKr/[d:;@ PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/curl-config.inUThPKr/[^ A ϜPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/.gitignoreUThPKr/[~qF@ dPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/ALTSVC.mdUThPKr/[r2B LPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/BINDINGS.mdUThPKr/[N39D PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/BUG-BOUNTY.mdUThPKr/[# |Vq2; bPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/BUGSUThPKr/[W5~d bB *PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CHECKSRC.mdUThPKr/[5} 2*A PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CIPHERS.mdUThPKr/[j6UE PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CMakeLists.txtUThPKr/[^yGI PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CODE_OF_CONDUCT.mdUThPKr/[$O DD "PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CODE_STYLE.mdUThPKr/[UZ,D PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/CONTRIBUTE.mdUThPKr/[(uC mPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/DEPRECATE.mdUThPKr/[ZFF PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/EXPERIMENTAL.mdUThPKr/[uz?a: =PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/FAQUThPKr/[Iv_ ? hPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/FEATURESUThPKr/[3+ "D VrPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/GOVERNANCE.mdUThPKr/[h} A g|PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/HELP-US.mdUThPKr/[^CN(A PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/HISTORY.mdUThPKr/[D} F PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/HTTP-COOKIES.mdUThPKr/[Ȅ_P? PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/HTTP2.mdUThPKr/[ĊI ? }PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/HTTP3.mdUThPKr/[f;> ЩPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/INSTALLUThPKr/[VĜD PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/INSTALL.cmakeUThPKr/[X7~FA PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/INSTALL.mdUThPKr/[ފ=+C RPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/INTERNALS.mdUThPKr/[](ToA PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/KNOWN_BUGSUThPKr/[ȻNH \4PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/LICENSE-MIXING.mdUThPKr/[S.E ;PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/MAIL-ETIQUETTEUThPKr/['5Q@ NPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/MANUAL.mdUThPKr/[̫אB 3PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/Makefile.amUThPKr/[yx&L <PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/PARALLEL-TRANSFERS.mdUThPKr/[pg2C ЏPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/README.cmakeUThPKr/[ @ |PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/README.mdUThPKr/[(E PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/README.netwareUThPKr/[/h`C wPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/README.win32UThPKr/[7 K PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/RELEASE-PROCEDURE.mdUThPKr/[Φ0X? @ 0PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/RESOURCESUThPKr/[ A ¡PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/ROADMAP.mdUThPKr/[R$ kJ ɥPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/SECURITY-PROCESS.mdUThPKr/[GX F nPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/SSL-PROBLEMS.mdUThPKr/[h* B CPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/SSLCERTS.mdUThPKr/[v`7t= PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/THANKSUThPKr/[+>D PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/THANKS-filterUThPKr/[-mY;; sPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/TODOUThPKr/[S})rL >?PyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/TheArtOfHttpScriptingUThPKr/[dl;E# ? iPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/VERSIONSUThPKr/[y{R cnPyMuPDF-b5f06508363a/mupdf-source/thirdparty/curl/docs/cmdline-opts/CMakeLists.txtUThPK\\+o