From 1cbaf970a20f25e59a5f959e0c4c85eedc374970 Mon Sep 17 00:00:00 2001 From: cristy Date: Wed, 9 Jan 2013 02:13:23 +0000 Subject: [PATCH] --- MagickCore/cache-private.h | 5 +- MagickCore/distribute-cache-private.h | 12 ++++- MagickCore/distribute-cache.c | 72 +++++++++++++++++++++++++++ 3 files changed, 83 insertions(+), 6 deletions(-) diff --git a/MagickCore/cache-private.h b/MagickCore/cache-private.h index 6ebe15547..698f3be9c 100644 --- a/MagickCore/cache-private.h +++ b/MagickCore/cache-private.h @@ -176,11 +176,8 @@ typedef struct _CacheInfo RandomInfo *random_info; - ssize_t - number_connections; - DistributeCacheInfo - connection[MaxNumberDistributedCacheClients]; + *distribute_cache_info; MagickBooleanType synchronize, diff --git a/MagickCore/distribute-cache-private.h b/MagickCore/distribute-cache-private.h index fc87da685..259c8d781 100644 --- a/MagickCore/distribute-cache-private.h +++ b/MagickCore/distribute-cache-private.h @@ -26,13 +26,21 @@ extern "C" { typedef struct _DistributeCacheInfo { + size_t + number_connections, + session[MaxNumberDistributedCacheClients]; + #if defined(MAGICKCORE_HAVE_SOCKET) int - server; + server[MaxNumberDistributedCacheClients]; #endif size_t - session; + signature; } DistributeCacheInfo; +extern MagickPrivate DistributeCacheInfo + *AcquireDistributeCacheInfo(void), + *DestroyDistributeCacheInfo(DistributeCacheInfo *); + #endif diff --git a/MagickCore/distribute-cache.c b/MagickCore/distribute-cache.c index 15a20118f..245f72f1e 100644 --- a/MagickCore/distribute-cache.c +++ b/MagickCore/distribute-cache.c @@ -52,6 +52,10 @@ Include declarations. */ #include "MagickCore/studio.h" +#include "MagickCore/distribute-cache.h" +#include "MagickCore/distribute-cache-private.h" +#include "MagickCore/exception.h" +#include "MagickCore/exception-private.h" #include "MagickCore/memory_.h" #if defined(MAGICKCORE_HAVE_SOCKET) #include @@ -64,6 +68,74 @@ % % % % % % +% A c q u i r e D i s t r i b u t e C a c h e I n f o % +% % +% % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% AcquireDistributeCacheInfo() allocates the DistributeCacheInfo structure. +% +% The format of the AcquireDistributeCacheInfo method is: +% +% DistributeCacheInfo *AcquireDistributeCacheInfo(void) +% +*/ +MagickPrivate DistributeCacheInfo *AcquireDistributeCacheInfo(void) +{ + DistributeCacheInfo + *distribute_cache_info; + + distribute_cache_info=(DistributeCacheInfo *) AcquireMagickMemory( + sizeof(*distribute_cache_info)); + if (distribute_cache_info == (DistributeCacheInfo *) NULL) + ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed"); + (void) ResetMagickMemory(distribute_cache_info,0, + sizeof(*distribute_cache_info)); + distribute_cache_info->signature=MagickSignature; + return(distribute_cache_info); +} + +/* +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % +% % +% % +% D e s t r o y D i s t r i b u t e C a c h e I n f o % +% % +% % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% DestroyDistributeCacheInfo() deallocates memory associated with an +% DistributeCacheInfo structure. +% +% The format of the DestroyDistributeCacheInfo method is: +% +% DistributeCacheInfo *DestroyDistributeCacheInfo( +% DistributeCacheInfo *distribute_cache_info) +% +% A description of each parameter follows: +% +% o distribute_cache_info: the distributed cache info. +% +*/ +MagickPrivate DistributeCacheInfo *DestroyDistributeCacheInfo( + DistributeCacheInfo *distribute_cache_info) +{ + assert(distribute_cache_info != (DistributeCacheInfo *) NULL); + assert(distribute_cache_info->signature == MagickSignature); + distribute_cache_info->signature=(~MagickSignature); + distribute_cache_info=(DistributeCacheInfo *) + RelinquishMagickMemory(distribute_cache_info); + return(distribute_cache_info); +} + +/* +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % +% % +% % + P i x e l C a c h e S e r v e r % % % % % -- 2.40.0