##// END OF EJS Templates
packaging: isolate invocation of WiX to own function...
packaging: isolate invocation of WiX to own function Like we did for Inno, we want to split out the building of Mercurial from invoking the packaging tool so that we can introduce an alternate build mechanism. As part of this refactor, there are inconsequential changes to file layouts. Before, some shared files such as the WiX binaries and merge modules would be installed under build/. Now, they are installed under build/wix-*. This is to keep implementation simpler. But it also helps keep build state more isolated. Differential Revision: https://phab.mercurial-scm.org/D8474

File last commit:

r42237:675775c3 default
r45257:11bd68a9 default
Show More
zstd_common.c
83 lines | 2.6 KiB | text/x-c | CLexer
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 /*
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 * Copyright (c) 2016-present, Yann Collet, Facebook, Inc.
* All rights reserved.
*
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 * This source code is licensed under both the BSD-style license (found in the
* LICENSE file in the root directory of this source tree) and the GPLv2 (found
* in the COPYING file in the root directory of this source tree).
* You may select, at your option, one of the above-listed licenses.
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 */
/*-*************************************
* Dependencies
***************************************/
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 #include <stdlib.h> /* malloc, calloc, free */
#include <string.h> /* memset */
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 #include "error_private.h"
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 #include "zstd_internal.h"
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434
/*-****************************************
* Version
******************************************/
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 unsigned ZSTD_versionNumber(void) { return ZSTD_VERSION_NUMBER; }
const char* ZSTD_versionString(void) { return ZSTD_VERSION_STRING; }
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434
/*-****************************************
* ZSTD Error Management
******************************************/
Gregory Szorc
zstandard: vendor python-zstandard 0.11...
r42237 #undef ZSTD_isError /* defined within zstd_internal.h */
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 /*! ZSTD_isError() :
Gregory Szorc
zstandard: vendor python-zstandard 0.11...
r42237 * tells if a return value is an error code
* symbol is required for external callers */
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 unsigned ZSTD_isError(size_t code) { return ERR_isError(code); }
/*! ZSTD_getErrorName() :
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 * provides error code string from function result (useful for debugging) */
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 const char* ZSTD_getErrorName(size_t code) { return ERR_getErrorName(code); }
/*! ZSTD_getError() :
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 * convert a `size_t` function result into a proper ZSTD_errorCode enum */
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 ZSTD_ErrorCode ZSTD_getErrorCode(size_t code) { return ERR_getErrorCode(code); }
/*! ZSTD_getErrorString() :
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 * provides error code string from enum */
const char* ZSTD_getErrorString(ZSTD_ErrorCode code) { return ERR_getErrorString(code); }
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434
/*=**************************************************************
* Custom allocator
****************************************************************/
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 void* ZSTD_malloc(size_t size, ZSTD_customMem customMem)
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 {
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 if (customMem.customAlloc)
return customMem.customAlloc(customMem.opaque, size);
return malloc(size);
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 }
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 void* ZSTD_calloc(size_t size, ZSTD_customMem customMem)
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 {
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 if (customMem.customAlloc) {
/* calloc implemented as malloc+memset;
* not as efficient as calloc, but next best guess for custom malloc */
void* const ptr = customMem.customAlloc(customMem.opaque, size);
memset(ptr, 0, size);
return ptr;
}
return calloc(1, size);
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 }
void ZSTD_free(void* ptr, ZSTD_customMem customMem)
{
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 if (ptr!=NULL) {
if (customMem.customFree)
customMem.customFree(customMem.opaque, ptr);
else
free(ptr);
}
Gregory Szorc
zstd: vendor zstd 1.1.1...
r30434 }