return(IsMagickTrue(i!=0));
}
-static char *SanitizeDelegateCommand(const char *command)
-{
- char
- *sanitize_command;
-
- const char
- *q;
-
- register char
- *p;
-
- static char
- whitelist[] =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_- "
- ".@&;<>|/\\\'\":%=~";
-
- sanitize_command=AcquireString(command);
- p=sanitize_command;
- q=sanitize_command+strlen(sanitize_command);
- for (p+=strspn(p,whitelist); p != q; p+=strspn(p,whitelist))
- *p='_';
- return(sanitize_command);
-}
-
MagickExport MagickBooleanType InvokeDelegate(ImageInfo *image_info,
Image *image,const char *decode,const char *encode,ExceptionInfo *exception)
{
command=InterpretImageProperties(image_info,image,commands[i],exception);
if (command != (char *) NULL)
{
- char
- *sanitize_command;
-
/*
Execute delegate.
*/
- sanitize_command=SanitizeDelegateCommand(command);
status=IsMagickTrue(SystemCommand(delegate_info->spawn,
- image_info->verbose,sanitize_command,exception) != 0);
- sanitize_command=DestroyString(sanitize_command);
+ image_info->verbose,command,exception) != 0);
if (IfMagickTrue(delegate_info->spawn))
{
ssize_t