mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
dtinfogen: replace Xt-related functions.
This commit is contained in:
parent
ad58dca2aa
commit
3212d19a78
1 changed files with 146 additions and 146 deletions
|
@ -31,6 +31,7 @@
|
||||||
* (c) Copyright 1996 Hitachi.
|
* (c) Copyright 1996 Hitachi.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
@ -45,13 +46,12 @@
|
||||||
#endif
|
#endif
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <X11/Intrinsic.h>
|
|
||||||
#include <Dt/Utility.h>
|
#include <Dt/Utility.h>
|
||||||
|
|
||||||
#define LANG_COMMON "ja_JP.UTF-8" /* default os language */
|
#define LANG_COMMON "ja_JP.UTF-8" /* default os language */
|
||||||
|
|
||||||
#define XtsNewString(str) \
|
#define XtsNewString(str) \
|
||||||
((str) != NULL ? (char *)(memcpy(XtMalloc((unsigned)strlen(str) + 1), \
|
((str) != NULL ? (char *)(memcpy(malloc((unsigned)strlen(str) + 1), \
|
||||||
str, (unsigned)strlen(str) + 1)) : NULL)
|
str, (unsigned)strlen(str) + 1)) : NULL)
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
|
@ -103,8 +103,8 @@ typedef struct _GlobalsStruct
|
||||||
char *searchEngine;
|
char *searchEngine;
|
||||||
char *parser;
|
char *parser;
|
||||||
|
|
||||||
Boolean verbose;
|
bool verbose;
|
||||||
Boolean keepWorkDir;
|
bool keepWorkDir;
|
||||||
char *workDir;
|
char *workDir;
|
||||||
|
|
||||||
char *library;
|
char *library;
|
||||||
|
@ -113,7 +113,7 @@ typedef struct _GlobalsStruct
|
||||||
char *libName;
|
char *libName;
|
||||||
char *outFile;
|
char *outFile;
|
||||||
char *saveESIS;
|
char *saveESIS;
|
||||||
Boolean loadESIS;
|
bool loadESIS;
|
||||||
int tocElemIndex;
|
int tocElemIndex;
|
||||||
char *id;
|
char *id;
|
||||||
char *title;
|
char *title;
|
||||||
|
@ -203,23 +203,23 @@ static void dieRWD(int exitCode, char *format, ...);
|
||||||
static void die(int exitCode, char *format, ...);
|
static void die(int exitCode, char *format, ...);
|
||||||
static void sigHandler(int sig);
|
static void sigHandler(int sig);
|
||||||
static void touchFile(char *fileName);
|
static void touchFile(char *fileName);
|
||||||
static Boolean checkStat(char *fileName, unsigned int flags);
|
static bool checkStat(char *fileName, unsigned int flags);
|
||||||
static void checkDir(char *dirName);
|
static void checkDir(char *dirName);
|
||||||
static void checkExec(char *execName);
|
static void checkExec(char *execName);
|
||||||
static char *makeTmpFile(void);
|
static char *makeTmpFile(void);
|
||||||
static char *makeWorkDir(void);
|
static char *makeWorkDir(void);
|
||||||
static void removeWorkDir(void);
|
static void removeWorkDir(void);
|
||||||
static void runShellCmd(char *cmd);
|
static void runShellCmd(char *cmd);
|
||||||
static Boolean doAdmin(int argc, char *argv[]);
|
static bool doAdmin(int argc, char *argv[]);
|
||||||
static Boolean doBuild(int argc, char *argv[]);
|
static bool doBuild(int argc, char *argv[]);
|
||||||
static Boolean doTocgen(int argc, char *argv[]);
|
static bool doTocgen(int argc, char *argv[]);
|
||||||
static Boolean doUpdate(int argc, char *argv[]);
|
static bool doUpdate(int argc, char *argv[]);
|
||||||
static Boolean doValidate(int argc, char *argv[]);
|
static bool doValidate(int argc, char *argv[]);
|
||||||
static Boolean doHelp(int argc, char *argv[]);
|
static bool doHelp(int argc, char *argv[]);
|
||||||
static void appendStr(char **str, int *curLen, int *maxLen, char *strToAppend);
|
static void appendStr(char **str, int *curLen, int *maxLen, char *strToAppend);
|
||||||
static char *makeAbsPathEnv(char *var);
|
static char *makeAbsPathEnv(char *var);
|
||||||
static char *makeAbsPathStr(char *str);
|
static char *makeAbsPathStr(char *str);
|
||||||
static char *addToEnv(char *var, char *addMe, Boolean prepend);
|
static char *addToEnv(char *var, char *addMe, bool prepend);
|
||||||
static char *buildPath(char *format, ...);
|
static char *buildPath(char *format, ...);
|
||||||
static char *buildSGML(void);
|
static char *buildSGML(void);
|
||||||
static char *buildDecl(void);
|
static char *buildDecl(void);
|
||||||
|
@ -232,7 +232,7 @@ static char *parseDocument(int runCmd, ...);
|
||||||
static void buildBookcase(char *cmdSrc, char *dirName);
|
static void buildBookcase(char *cmdSrc, char *dirName);
|
||||||
static char *storeBookCase(char *cmdSrc, char *tocOpt, char *dbName,
|
static char *storeBookCase(char *cmdSrc, char *tocOpt, char *dbName,
|
||||||
char *dirName);
|
char *dirName);
|
||||||
static Boolean findBookCaseNameAndDesc(char *tmpFile, char *bookCaseName,
|
static bool findBookCaseNameAndDesc(char *tmpFile, char *bookCaseName,
|
||||||
char *bookCaseDesc);
|
char *bookCaseDesc);
|
||||||
static void validateBookCaseName(char *bookCaseName);
|
static void validateBookCaseName(char *bookCaseName);
|
||||||
static void validateBookCase(char *mapName, char *bookCaseName);
|
static void validateBookCase(char *mapName, char *bookCaseName);
|
||||||
|
@ -293,7 +293,7 @@ die(int exitCode, char *format, ...)
|
||||||
static void
|
static void
|
||||||
sigHandler(int sig)
|
sigHandler(int sig)
|
||||||
{
|
{
|
||||||
gStruct->keepWorkDir = False; /* Always clean up on signal. */
|
gStruct->keepWorkDir = false; /* Always clean up on signal. */
|
||||||
dieRWD(-1, "Received signal; exiting...\n");
|
dieRWD(-1, "Received signal; exiting...\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -312,33 +312,33 @@ touchFile(char *fileName)
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
checkStat(char *fileName, unsigned int flags)
|
checkStat(char *fileName, unsigned int flags)
|
||||||
{
|
{
|
||||||
struct stat statBuf;
|
struct stat statBuf;
|
||||||
Boolean userOwnsFile;
|
bool userOwnsFile;
|
||||||
Boolean userInGroup;
|
bool userInGroup;
|
||||||
|
|
||||||
if (!fileName)
|
if (!fileName)
|
||||||
return False;
|
return false;
|
||||||
|
|
||||||
errno = 0;
|
errno = 0;
|
||||||
|
|
||||||
if (stat(fileName, &statBuf) != 0)
|
if (stat(fileName, &statBuf) != 0)
|
||||||
return False;
|
return false;
|
||||||
|
|
||||||
if ((flags & FSTAT_IS_FILE) &&
|
if ((flags & FSTAT_IS_FILE) &&
|
||||||
(!S_ISREG(statBuf.st_mode)))
|
(!S_ISREG(statBuf.st_mode)))
|
||||||
{
|
{
|
||||||
errno = ENOENT;
|
errno = ENOENT;
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((flags & FSTAT_IS_DIR) &&
|
if ((flags & FSTAT_IS_DIR) &&
|
||||||
(!S_ISDIR(statBuf.st_mode)))
|
(!S_ISDIR(statBuf.st_mode)))
|
||||||
{
|
{
|
||||||
errno = ENOTDIR;
|
errno = ENOTDIR;
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
userOwnsFile = (getuid() == statBuf.st_uid);
|
userOwnsFile = (getuid() == statBuf.st_uid);
|
||||||
|
@ -350,15 +350,15 @@ checkStat(char *fileName, unsigned int flags)
|
||||||
if (userOwnsFile)
|
if (userOwnsFile)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IRUSR))
|
if (!(statBuf.st_mode & S_IRUSR))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (userInGroup)
|
else if (userInGroup)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IRGRP))
|
if (!(statBuf.st_mode & S_IRGRP))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (!(statBuf.st_mode & S_IROTH))
|
else if (!(statBuf.st_mode & S_IROTH))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & FSTAT_IS_WRITABLE)
|
if (flags & FSTAT_IS_WRITABLE)
|
||||||
|
@ -366,15 +366,15 @@ checkStat(char *fileName, unsigned int flags)
|
||||||
if (userOwnsFile)
|
if (userOwnsFile)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IWUSR))
|
if (!(statBuf.st_mode & S_IWUSR))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (userInGroup)
|
else if (userInGroup)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IWGRP))
|
if (!(statBuf.st_mode & S_IWGRP))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (!(statBuf.st_mode & S_IWOTH))
|
else if (!(statBuf.st_mode & S_IWOTH))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & FSTAT_IS_EXECUTABLE)
|
if (flags & FSTAT_IS_EXECUTABLE)
|
||||||
|
@ -382,19 +382,19 @@ checkStat(char *fileName, unsigned int flags)
|
||||||
if (userOwnsFile)
|
if (userOwnsFile)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IXUSR))
|
if (!(statBuf.st_mode & S_IXUSR))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (userInGroup)
|
else if (userInGroup)
|
||||||
{
|
{
|
||||||
if (!(statBuf.st_mode & S_IXGRP))
|
if (!(statBuf.st_mode & S_IXGRP))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
else if (!(statBuf.st_mode & S_IXOTH))
|
else if (!(statBuf.st_mode & S_IXOTH))
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
errno = 0;
|
errno = 0;
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -417,20 +417,20 @@ checkDir(char *dirName)
|
||||||
runShellCmd(cmdBuf);
|
runShellCmd(cmdBuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
testExec(char *execName, Boolean tellIt)
|
testExec(char *execName, bool tellIt)
|
||||||
{
|
{
|
||||||
char *path;
|
char *path;
|
||||||
char **pathVector;
|
char **pathVector;
|
||||||
int i;
|
int i;
|
||||||
char execBuf[MAXPATHLEN + 1];
|
char execBuf[MAXPATHLEN + 1];
|
||||||
Boolean found;
|
bool found;
|
||||||
|
|
||||||
if (!execName)
|
if (!execName)
|
||||||
return True;
|
return true;
|
||||||
|
|
||||||
if ((path = getenv("PATH")) == (char *)NULL)
|
if ((path = getenv("PATH")) == (char *)NULL)
|
||||||
return True;
|
return true;
|
||||||
|
|
||||||
path = XtsNewString(path);
|
path = XtsNewString(path);
|
||||||
pathVector = _DtVectorizeInPlace(path, ':');
|
pathVector = _DtVectorizeInPlace(path, ':');
|
||||||
|
@ -444,8 +444,8 @@ testExec(char *execName, Boolean tellIt)
|
||||||
|
|
||||||
found = (pathVector[i] != (char *)NULL);
|
found = (pathVector[i] != (char *)NULL);
|
||||||
|
|
||||||
XtFree((char *)pathVector);
|
free((char *)pathVector);
|
||||||
XtFree(path);
|
free(path);
|
||||||
|
|
||||||
if (found && tellIt)
|
if (found && tellIt)
|
||||||
fprintf(stderr, "%s ==> %s\n", execName, execBuf);
|
fprintf(stderr, "%s ==> %s\n", execName, execBuf);
|
||||||
|
@ -474,7 +474,7 @@ makeTmpFile(void)
|
||||||
if (!checkStat(tmpFile, FSTAT_EXISTS))
|
if (!checkStat(tmpFile, FSTAT_EXISTS))
|
||||||
return tmpFile;
|
return tmpFile;
|
||||||
|
|
||||||
XtFree(tmpFile);
|
free(tmpFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
dieRWD(-1, "%s: could not create tmp file.\n", EXEC_NAME);
|
dieRWD(-1, "%s: could not create tmp file.\n", EXEC_NAME);
|
||||||
|
@ -512,7 +512,7 @@ makeWorkDir(void)
|
||||||
return workDir;
|
return workDir;
|
||||||
}
|
}
|
||||||
|
|
||||||
XtFree(workDir);
|
free(workDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
dieRWD(-1, "%s: could not create work directory.\n", EXEC_NAME);
|
dieRWD(-1, "%s: could not create work directory.\n", EXEC_NAME);
|
||||||
|
@ -532,7 +532,7 @@ removeWorkDir(void)
|
||||||
snprintf(cmdBuf, sizeof(cmdBuf), "rm -rf %s", gStruct->workDir);
|
snprintf(cmdBuf, sizeof(cmdBuf), "rm -rf %s", gStruct->workDir);
|
||||||
ret = system(cmdBuf);
|
ret = system(cmdBuf);
|
||||||
if(ret != 0) die(-1, "system for rm failed; exiting...\n");
|
if(ret != 0) die(-1, "system for rm failed; exiting...\n");
|
||||||
XtFree(gStruct->workDir);
|
free(gStruct->workDir);
|
||||||
gStruct->workDir = (char *)NULL;
|
gStruct->workDir = (char *)NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -547,7 +547,7 @@ runShellCmd(char *cmd)
|
||||||
dieRWD(-1, "%s: command failed: %s\n", EXEC_NAME, cmd);
|
dieRWD(-1, "%s: command failed: %s\n", EXEC_NAME, cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doAdmin(int argc, char *argv[])
|
doAdmin(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "admin") == 0)
|
if (strcmp(argv[1], "admin") == 0)
|
||||||
|
@ -557,13 +557,13 @@ doAdmin(int argc, char *argv[])
|
||||||
|
|
||||||
runShellCmd("Librarian");
|
runShellCmd("Librarian");
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doBuild(int argc, char *argv[])
|
doBuild(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "build") == 0)
|
if (strcmp(argv[1], "build") == 0)
|
||||||
|
@ -604,7 +604,7 @@ doBuild(int argc, char *argv[])
|
||||||
if ((dirName = dirname(bcCopy)) == (char *)NULL)
|
if ((dirName = dirname(bcCopy)) == (char *)NULL)
|
||||||
dirName = ".";
|
dirName = ".";
|
||||||
dirName = XtsNewString(dirName);
|
dirName = XtsNewString(dirName);
|
||||||
XtFree(bcCopy);
|
free(bcCopy);
|
||||||
|
|
||||||
if (gStruct->loadESIS)
|
if (gStruct->loadESIS)
|
||||||
{
|
{
|
||||||
|
@ -612,13 +612,13 @@ doBuild(int argc, char *argv[])
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
cmdSrc = parseDocument(False, bookcase, 0);
|
cmdSrc = parseDocument(false, bookcase, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
buildBookcase(cmdSrc, dirName);
|
buildBookcase(cmdSrc, dirName);
|
||||||
|
|
||||||
XtFree(cmdSrc);
|
free(cmdSrc);
|
||||||
XtFree(dirName);
|
free(dirName);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gStruct->libName)
|
if (!gStruct->libName)
|
||||||
|
@ -626,15 +626,15 @@ doBuild(int argc, char *argv[])
|
||||||
fileToTouch = buildPath("%s/%s.oli",
|
fileToTouch = buildPath("%s/%s.oli",
|
||||||
gStruct->library, gStruct->libName);
|
gStruct->library, gStruct->libName);
|
||||||
touchFile(fileToTouch);
|
touchFile(fileToTouch);
|
||||||
XtFree(fileToTouch);
|
free(fileToTouch);
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doTocgen(int argc, char *argv[])
|
doTocgen(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "tocgen") == 0)
|
if (strcmp(argv[1], "tocgen") == 0)
|
||||||
|
@ -658,12 +658,12 @@ doTocgen(int argc, char *argv[])
|
||||||
|
|
||||||
buildTOC(argc - argsProcessed, &argv[argsProcessed]);
|
buildTOC(argc - argsProcessed, &argv[argsProcessed]);
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doUpdate(int argc, char *argv[])
|
doUpdate(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "update") == 0)
|
if (strcmp(argv[1], "update") == 0)
|
||||||
|
@ -700,22 +700,22 @@ doUpdate(int argc, char *argv[])
|
||||||
if (!checkStat(styleSheet, FSTAT_IS_READABLE))
|
if (!checkStat(styleSheet, FSTAT_IS_READABLE))
|
||||||
die(-1, "%s: %s: %s\n", EXEC_NAME, styleSheet, strerror(errno));
|
die(-1, "%s: %s: %s\n", EXEC_NAME, styleSheet, strerror(errno));
|
||||||
|
|
||||||
cmdSrc = parseDocument(False,
|
cmdSrc = parseDocument(false,
|
||||||
gStruct->styleProlog, styleSheet, 0);
|
gStruct->styleProlog, styleSheet, 0);
|
||||||
cmd = buildPath("%s | StyleUpdate %s %s",
|
cmd = buildPath("%s | StyleUpdate %s %s",
|
||||||
cmdSrc, gStruct->library, gStruct->bookCase);
|
cmdSrc, gStruct->library, gStruct->bookCase);
|
||||||
runShellCmd(cmd);
|
runShellCmd(cmd);
|
||||||
|
|
||||||
XtFree(cmdSrc);
|
free(cmdSrc);
|
||||||
XtFree(cmd);
|
free(cmd);
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doValidate(int argc, char *argv[])
|
doValidate(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "validate") == 0)
|
if (strcmp(argv[1], "validate") == 0)
|
||||||
|
@ -739,25 +739,25 @@ doValidate(int argc, char *argv[])
|
||||||
|
|
||||||
if (gStruct->saveESIS)
|
if (gStruct->saveESIS)
|
||||||
{
|
{
|
||||||
cmdSrc = parseDocument(False, bookcase, 0);
|
cmdSrc = parseDocument(false, bookcase, 0);
|
||||||
cmd = buildPath("%s > %s", cmdSrc, gStruct->saveESIS);
|
cmd = buildPath("%s > %s", cmdSrc, gStruct->saveESIS);
|
||||||
runShellCmd(cmd);
|
runShellCmd(cmd);
|
||||||
XtFree(cmdSrc);
|
free(cmdSrc);
|
||||||
XtFree(cmd);
|
free(cmd);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
parseDocument(True, bookcase, 0);
|
parseDocument(true, bookcase, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
doHelp(int argc, char *argv[])
|
doHelp(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "-h") == 0)
|
if (strcmp(argv[1], "-h") == 0)
|
||||||
|
@ -765,10 +765,10 @@ doHelp(int argc, char *argv[])
|
||||||
printUsage((char *)NULL, 0);
|
printUsage((char *)NULL, 0);
|
||||||
|
|
||||||
/* NOTREACHED */
|
/* NOTREACHED */
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -782,7 +782,7 @@ appendStr(char **str, int *curLen, int *maxLen, char *strToAppend)
|
||||||
len = strlen(strToAppend);
|
len = strlen(strToAppend);
|
||||||
while (*curLen + len >= *maxLen)
|
while (*curLen + len >= *maxLen)
|
||||||
{
|
{
|
||||||
newStr = XtRealloc(*str, (*maxLen + MAXPATHLEN) * sizeof(char));
|
newStr = realloc(*str, (*maxLen + MAXPATHLEN) * sizeof(char));
|
||||||
if (!newStr)
|
if (!newStr)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -815,11 +815,11 @@ makeAbsPathEnv(char *var)
|
||||||
var, oldPath, newPath);
|
var, oldPath, newPath);
|
||||||
|
|
||||||
pathlen = strlen(var) + strlen(newPath) + 2;
|
pathlen = strlen(var) + strlen(newPath) + 2;
|
||||||
newVar = XtMalloc(pathlen);
|
newVar = malloc(pathlen);
|
||||||
snprintf(newVar, pathlen, "%s=%s", var, newPath);
|
snprintf(newVar, pathlen, "%s=%s", var, newPath);
|
||||||
putenv(newVar);
|
putenv(newVar);
|
||||||
|
|
||||||
XtFree(newPath);
|
free(newPath);
|
||||||
|
|
||||||
return newVar;
|
return newVar;
|
||||||
}
|
}
|
||||||
|
@ -893,18 +893,18 @@ makeAbsPathStr(char *str)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
XtFree((char *)dirVector);
|
free((char *)dirVector);
|
||||||
}
|
}
|
||||||
|
|
||||||
XtFree((char *)pathVector);
|
free((char *)pathVector);
|
||||||
XtFree((char *)cwdVector);
|
free((char *)cwdVector);
|
||||||
XtFree(str);
|
free(str);
|
||||||
|
|
||||||
return newPath;
|
return newPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static char *
|
||||||
addToEnv(char *var, char *addMe, Boolean prepend)
|
addToEnv(char *var, char *addMe, bool prepend)
|
||||||
{
|
{
|
||||||
char *envStr;
|
char *envStr;
|
||||||
int len, ptrlen;
|
int len, ptrlen;
|
||||||
|
@ -920,7 +920,7 @@ addToEnv(char *var, char *addMe, Boolean prepend)
|
||||||
len = strlen(var) + strlen(STR(envStr)) + strlen(addMe) + 3;
|
len = strlen(var) + strlen(STR(envStr)) + strlen(addMe) + 3;
|
||||||
ptrlen = len * sizeof(char);
|
ptrlen = len * sizeof(char);
|
||||||
|
|
||||||
if ((ptr = XtMalloc(ptrlen)) != (char *)NULL)
|
if ((ptr = malloc(ptrlen)) != (char *)NULL)
|
||||||
{
|
{
|
||||||
if (envStr)
|
if (envStr)
|
||||||
{
|
{
|
||||||
|
@ -990,7 +990,7 @@ defaultGlobals(void)
|
||||||
{
|
{
|
||||||
memset((void *)gStruct, 0, sizeof(GlobalsStruct));
|
memset((void *)gStruct, 0, sizeof(GlobalsStruct));
|
||||||
|
|
||||||
gStruct->verbose = False;
|
gStruct->verbose = false;
|
||||||
|
|
||||||
/* Clear out the ENV environment variable. */
|
/* Clear out the ENV environment variable. */
|
||||||
if (getenv("ENV") != (char *)NULL)
|
if (getenv("ENV") != (char *)NULL)
|
||||||
|
@ -1069,7 +1069,7 @@ defaultGlobals(void)
|
||||||
gStruct->dirMode = 0775;
|
gStruct->dirMode = 0775;
|
||||||
gStruct->searchEngine = "dtsearch";
|
gStruct->searchEngine = "dtsearch";
|
||||||
gStruct->parser = "onsgmls";
|
gStruct->parser = "onsgmls";
|
||||||
gStruct->keepWorkDir = False;
|
gStruct->keepWorkDir = false;
|
||||||
gStruct->workDir = (char *)NULL;
|
gStruct->workDir = (char *)NULL;
|
||||||
|
|
||||||
gStruct->tocElemIndex = 0;
|
gStruct->tocElemIndex = 0;
|
||||||
|
@ -1125,7 +1125,7 @@ checkGlobals(void)
|
||||||
STR(langtbl[gStruct->dtsridx].name));
|
STR(langtbl[gStruct->dtsridx].name));
|
||||||
|
|
||||||
if (!checkStat(gStruct->dtsrlib, FSTAT_IS_DIR)) {
|
if (!checkStat(gStruct->dtsrlib, FSTAT_IS_DIR)) {
|
||||||
XtFree(gStruct->dtsrlib);
|
free(gStruct->dtsrlib);
|
||||||
gStruct->dtsrlib = buildPath("%s/infolib/etc/%s/dtsr",
|
gStruct->dtsrlib = buildPath("%s/infolib/etc/%s/dtsr",
|
||||||
gStruct->install, LANG_COMMON);
|
gStruct->install, LANG_COMMON);
|
||||||
}
|
}
|
||||||
|
@ -1141,7 +1141,7 @@ checkGlobals(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
addCatFile(char *catalog, Bool needed)
|
addCatFile(char *catalog, bool needed)
|
||||||
{
|
{
|
||||||
char pathBuf[(2 * MAXPATHLEN) + 10];
|
char pathBuf[(2 * MAXPATHLEN) + 10];
|
||||||
char *ptr1, *ptr2;
|
char *ptr1, *ptr2;
|
||||||
|
@ -1158,7 +1158,7 @@ addCatFile(char *catalog, Bool needed)
|
||||||
snprintf(pathBuf, sizeof(pathBuf), "-c%s ", ptr1);
|
snprintf(pathBuf, sizeof(pathBuf), "-c%s ", ptr1);
|
||||||
appendStr(&gStruct->sgmlCatFiles, &gStruct->sgmlCatFilesLen,
|
appendStr(&gStruct->sgmlCatFiles, &gStruct->sgmlCatFilesLen,
|
||||||
&gStruct->sgmlCatFilesMaxLen, pathBuf);
|
&gStruct->sgmlCatFilesMaxLen, pathBuf);
|
||||||
XtFree(ptr1);
|
free(ptr1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -1223,7 +1223,7 @@ parseArgs(int argc, char *argv[])
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "-v") == 0)
|
else if (strcmp(argv[i], "-v") == 0)
|
||||||
{
|
{
|
||||||
gStruct->verbose = True;
|
gStruct->verbose = true;
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "-h") == 0)
|
else if (strcmp(argv[i], "-h") == 0)
|
||||||
{
|
{
|
||||||
|
@ -1240,7 +1240,7 @@ parseArgs(int argc, char *argv[])
|
||||||
else if (strcmp(argv[i], "-m") == 0)
|
else if (strcmp(argv[i], "-m") == 0)
|
||||||
{
|
{
|
||||||
if (++i < argc)
|
if (++i < argc)
|
||||||
addCatFile(argv[i], True);
|
addCatFile(argv[i], true);
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "-s") == 0)
|
else if (strcmp(argv[i], "-s") == 0)
|
||||||
{
|
{
|
||||||
|
@ -1255,7 +1255,7 @@ parseArgs(int argc, char *argv[])
|
||||||
else if (strcmp(argv[i], "--load-esis") == 0)
|
else if (strcmp(argv[i], "--load-esis") == 0)
|
||||||
{
|
{
|
||||||
if (++i < argc)
|
if (++i < argc)
|
||||||
gStruct->loadESIS = True;
|
gStruct->loadESIS = true;
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "--bin") == 0)
|
else if (strcmp(argv[i], "--bin") == 0)
|
||||||
{
|
{
|
||||||
|
@ -1263,18 +1263,18 @@ parseArgs(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
char *ptr1, *ptr2;
|
char *ptr1, *ptr2;
|
||||||
|
|
||||||
ptr1 = addToEnv("PATH", argv[i], True);
|
ptr1 = addToEnv("PATH", argv[i], true);
|
||||||
ptr2 = makeAbsPathEnv("PATH");
|
ptr2 = makeAbsPathEnv("PATH");
|
||||||
if (gStruct->pathEnv)
|
if (gStruct->pathEnv)
|
||||||
XtFree(gStruct->pathEnv);
|
free(gStruct->pathEnv);
|
||||||
if (ptr1)
|
if (ptr1)
|
||||||
XtFree(ptr1);
|
free(ptr1);
|
||||||
gStruct->pathEnv = ptr2;
|
gStruct->pathEnv = ptr2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "--keep") == 0)
|
else if (strcmp(argv[i], "--keep") == 0)
|
||||||
{
|
{
|
||||||
gStruct->keepWorkDir = True;
|
gStruct->keepWorkDir = true;
|
||||||
}
|
}
|
||||||
else if (strcmp(argv[i], "-chapter") == 0)
|
else if (strcmp(argv[i], "-chapter") == 0)
|
||||||
{
|
{
|
||||||
|
@ -1319,10 +1319,10 @@ parseDocument(int runCmd, ...)
|
||||||
EXEC_NAME, strerror(errno));
|
EXEC_NAME, strerror(errno));
|
||||||
|
|
||||||
addCatFile(buildPath("%s/infolib/sgml/catalog",
|
addCatFile(buildPath("%s/infolib/sgml/catalog",
|
||||||
STR(gStruct->install)), True);
|
STR(gStruct->install)), true);
|
||||||
|
|
||||||
if (!gStruct->sgmlSearchPathEnv)
|
if (!gStruct->sgmlSearchPathEnv)
|
||||||
gStruct->sgmlSearchPathEnv = addToEnv("SGML_SEARCH_PATH", ".", False);
|
gStruct->sgmlSearchPathEnv = addToEnv("SGML_SEARCH_PATH", ".", false);
|
||||||
|
|
||||||
appendStr(&cmd, &cmdLen, &maxLen, gStruct->parser);
|
appendStr(&cmd, &cmdLen, &maxLen, gStruct->parser);
|
||||||
appendStr(&cmd, &cmdLen, &maxLen, " ");
|
appendStr(&cmd, &cmdLen, &maxLen, " ");
|
||||||
|
@ -1341,7 +1341,7 @@ parseDocument(int runCmd, ...)
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
|
||||||
runShellCmd(cmd);
|
runShellCmd(cmd);
|
||||||
XtFree(cmd);
|
free(cmd);
|
||||||
return (char *)NULL;
|
return (char *)NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1378,7 +1378,7 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
tmpFile = storeBookCase(cmdSrc, "all", dataBase, dirName);
|
tmpFile = storeBookCase(cmdSrc, "all", dataBase, dirName);
|
||||||
newMmdbPathEnv = buildPath("MMDB_PATH=%s", STR(gStruct->library));
|
newMmdbPathEnv = buildPath("MMDB_PATH=%s", STR(gStruct->library));
|
||||||
if (gStruct->mmdbPathEnv)
|
if (gStruct->mmdbPathEnv)
|
||||||
XtFree(gStruct->mmdbPathEnv);
|
free(gStruct->mmdbPathEnv);
|
||||||
gStruct->mmdbPathEnv = newMmdbPathEnv;
|
gStruct->mmdbPathEnv = newMmdbPathEnv;
|
||||||
putenv(newMmdbPathEnv);
|
putenv(newMmdbPathEnv);
|
||||||
|
|
||||||
|
@ -1387,7 +1387,7 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
|
|
||||||
if (!findBookCaseNameAndDesc(tmpFile, bookCaseName, bookCaseDesc))
|
if (!findBookCaseNameAndDesc(tmpFile, bookCaseName, bookCaseDesc))
|
||||||
dieRWD(-1, "%s: Missing Bookcase name\n", EXEC_NAME);
|
dieRWD(-1, "%s: Missing Bookcase name\n", EXEC_NAME);
|
||||||
XtFree(tmpFile);
|
free(tmpFile);
|
||||||
|
|
||||||
bookCaseDir = buildPath("%s/%s", STR(gStruct->library), bookCaseName);
|
bookCaseDir = buildPath("%s/%s", STR(gStruct->library), bookCaseName);
|
||||||
if (checkStat(bookCaseDir, FSTAT_IS_DIR))
|
if (checkStat(bookCaseDir, FSTAT_IS_DIR))
|
||||||
|
@ -1428,7 +1428,7 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
snprintf(cmd, sizeof(cmd), "rm -f %s", style_file);
|
snprintf(cmd, sizeof(cmd), "rm -f %s", style_file);
|
||||||
ret1 = system(cmd);
|
ret1 = system(cmd);
|
||||||
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
||||||
XtFree((char*)style_file);
|
free((char*)style_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1448,7 +1448,7 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
snprintf(cmd, sizeof(cmd), "rm -f %s", compress_file);
|
snprintf(cmd, sizeof(cmd), "rm -f %s", compress_file);
|
||||||
ret1 = system(cmd);
|
ret1 = system(cmd);
|
||||||
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
||||||
XtFree((char*)compress_file);
|
free((char*)compress_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1468,11 +1468,11 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
snprintf(cmd, sizeof(cmd), "rm -f %s", anonym_file);
|
snprintf(cmd, sizeof(cmd), "rm -f %s", anonym_file);
|
||||||
ret1 = system(cmd);
|
ret1 = system(cmd);
|
||||||
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
if(ret1 != 0) die(-1, "system for rm failed; exiting...\n");
|
||||||
XtFree((char*)anonym_file);
|
free((char*)anonym_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
validateBookCase(bookCaseMap, bookCaseName);
|
validateBookCase(bookCaseMap, bookCaseName);
|
||||||
XtFree(bookCaseMap);
|
free(bookCaseMap);
|
||||||
|
|
||||||
if (strcmp(gStruct->searchEngine, "dtsearch") == 0)
|
if (strcmp(gStruct->searchEngine, "dtsearch") == 0)
|
||||||
{
|
{
|
||||||
|
@ -1549,7 +1549,7 @@ buildBookcase(char *cmdSrc, char *dirName)
|
||||||
dieRWD(-1, "%s: Cannot find %s: %s\n",
|
dieRWD(-1, "%s: Cannot find %s: %s\n",
|
||||||
EXEC_NAME, curDir, strerror(errno));
|
EXEC_NAME, curDir, strerror(errno));
|
||||||
}
|
}
|
||||||
XtFree(bookCaseDir);
|
free(bookCaseDir);
|
||||||
|
|
||||||
if (!gStruct->keepWorkDir)
|
if (!gStruct->keepWorkDir)
|
||||||
removeWorkDir();
|
removeWorkDir();
|
||||||
|
@ -1583,15 +1583,15 @@ storeBookCase(char *cmdSrc, char *tocOpt, char *dbName,
|
||||||
cmd = buildPath("rm -f %s", onsgmls_file);
|
cmd = buildPath("rm -f %s", onsgmls_file);
|
||||||
ret = system(cmd);
|
ret = system(cmd);
|
||||||
if(ret != 0) die(-1, "system for rm failed; exiting...\n");
|
if(ret != 0) die(-1, "system for rm failed; exiting...\n");
|
||||||
XtFree((char*)onsgmls_file);
|
free((char*)onsgmls_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
XtFree(cmd);
|
free(cmd);
|
||||||
|
|
||||||
return tmpFile;
|
return tmpFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Boolean
|
static bool
|
||||||
findBookCaseNameAndDesc(char *tmpFile, char *bookCaseName,
|
findBookCaseNameAndDesc(char *tmpFile, char *bookCaseName,
|
||||||
char *bookCaseDesc)
|
char *bookCaseDesc)
|
||||||
{
|
{
|
||||||
|
@ -1623,20 +1623,20 @@ findBookCaseNameAndDesc(char *tmpFile, char *bookCaseName,
|
||||||
*((char *) memcpy(bookCaseDesc, p1, len) + len) = '\0';
|
*((char *) memcpy(bookCaseDesc, p1, len) + len) = '\0';
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
|
||||||
return True;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
|
||||||
return False;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
validateBookCaseName(char *bookCaseName)
|
validateBookCaseName(char *bookCaseName)
|
||||||
{
|
{
|
||||||
Boolean isOk = False;
|
bool isOk = false;
|
||||||
|
|
||||||
if (strlen(bookCaseName) <= 8)
|
if (strlen(bookCaseName) <= 8)
|
||||||
{
|
{
|
||||||
|
@ -1707,14 +1707,14 @@ editMapFile(char *bookCaseName, char *bookCaseMap)
|
||||||
char *lastLine;
|
char *lastLine;
|
||||||
int i;
|
int i;
|
||||||
int bcNameLen;
|
int bcNameLen;
|
||||||
Boolean replaced = False;
|
bool replaced = false;
|
||||||
|
|
||||||
if ((stat(bookCaseMap, &statBuf) != 0) ||
|
if ((stat(bookCaseMap, &statBuf) != 0) ||
|
||||||
((fp = fopen(bookCaseMap, "r")) == (FILE *)NULL))
|
((fp = fopen(bookCaseMap, "r")) == (FILE *)NULL))
|
||||||
dieRWD(-1, "%s: %s: %s\n", EXEC_NAME, bookCaseMap,
|
dieRWD(-1, "%s: %s: %s\n", EXEC_NAME, bookCaseMap,
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
|
|
||||||
file = XtMalloc((statBuf.st_size + 1) * sizeof(char));
|
file = malloc((statBuf.st_size + 1) * sizeof(char));
|
||||||
ret = fread(file, statBuf.st_size, sizeof(char), fp);
|
ret = fread(file, statBuf.st_size, sizeof(char), fp);
|
||||||
if(ret == 0) die(-1, "fread failed; exiting...\n");
|
if(ret == 0) die(-1, "fread failed; exiting...\n");
|
||||||
if (file[statBuf.st_size - 1] == '\n')
|
if (file[statBuf.st_size - 1] == '\n')
|
||||||
|
@ -1730,7 +1730,7 @@ editMapFile(char *bookCaseName, char *bookCaseMap)
|
||||||
libID = lineVector[1];
|
libID = lineVector[1];
|
||||||
else
|
else
|
||||||
libID = (char *)NULL;
|
libID = (char *)NULL;
|
||||||
XtFree((char *)lineVector);
|
free((char *)lineVector);
|
||||||
|
|
||||||
if ((libDesc = gStruct->libDesc) == (char *)NULL)
|
if ((libDesc = gStruct->libDesc) == (char *)NULL)
|
||||||
libDesc = oldDesc;
|
libDesc = oldDesc;
|
||||||
|
@ -1745,7 +1745,7 @@ editMapFile(char *bookCaseName, char *bookCaseMap)
|
||||||
bcNameLen = strlen(bookCaseName);
|
bcNameLen = strlen(bookCaseName);
|
||||||
|
|
||||||
fprintf(fp, "%s\t%s\n", STR(libDesc), STR(libID));
|
fprintf(fp, "%s\t%s\n", STR(libDesc), STR(libID));
|
||||||
XtFree(firstLine);
|
free(firstLine);
|
||||||
|
|
||||||
for (i = 1; fileVector[i] != (char *)NULL; i++)
|
for (i = 1; fileVector[i] != (char *)NULL; i++)
|
||||||
{
|
{
|
||||||
|
@ -1756,7 +1756,7 @@ editMapFile(char *bookCaseName, char *bookCaseMap)
|
||||||
if (!replaced)
|
if (!replaced)
|
||||||
{
|
{
|
||||||
fprintf(fp, "%s\n", lastLine);
|
fprintf(fp, "%s\n", lastLine);
|
||||||
replaced = True;
|
replaced = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1770,8 +1770,8 @@ editMapFile(char *bookCaseName, char *bookCaseMap)
|
||||||
|
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
|
||||||
XtFree((char *)fileVector);
|
free((char *)fileVector);
|
||||||
XtFree(file);
|
free(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1833,15 +1833,15 @@ buildTOC(int argc, char *argv[])
|
||||||
}
|
}
|
||||||
|
|
||||||
tocBC = tocBookcase(argc, argv);
|
tocBC = tocBookcase(argc, argv);
|
||||||
cmdSrc = parseDocument(False, tocBC, 0);
|
cmdSrc = parseDocument(false, tocBC, 0);
|
||||||
if ((tocDir = dirname(tocBC)) == (char *)NULL)
|
if ((tocDir = dirname(tocBC)) == (char *)NULL)
|
||||||
tocDir = ".";
|
tocDir = ".";
|
||||||
tocDir = XtsNewString(tocDir);
|
tocDir = XtsNewString(tocDir);
|
||||||
p1 = storeBookCase(cmdSrc, "toc", makeWorkDir(), tocDir);
|
p1 = storeBookCase(cmdSrc, "toc", makeWorkDir(), tocDir);
|
||||||
XtFree(p1);
|
free(p1);
|
||||||
XtFree(tocDir);
|
free(tocDir);
|
||||||
XtFree(cmdSrc);
|
free(cmdSrc);
|
||||||
XtFree(tocBC);
|
free(tocBC);
|
||||||
|
|
||||||
makeTOC(idBuf, titleBuf);
|
makeTOC(idBuf, titleBuf);
|
||||||
|
|
||||||
|
@ -1948,14 +1948,14 @@ makeTOC(char *id, char *title)
|
||||||
|
|
||||||
ptr1 = replaceData(STR(tocRecord->loc), "&", "&");
|
ptr1 = replaceData(STR(tocRecord->loc), "&", "&");
|
||||||
ptr2 = replaceData(ptr1, "\"", """);
|
ptr2 = replaceData(ptr1, "\"", """);
|
||||||
XtFree(ptr1);
|
free(ptr1);
|
||||||
|
|
||||||
snprintf(lineBuf, sizeof(lineBuf),
|
snprintf(lineBuf, sizeof(lineBuf),
|
||||||
"<TOCEntry LinkEnd=\"%s\">%s</> <!-- %s:%s -->\n",
|
"<TOCEntry LinkEnd=\"%s\">%s</> <!-- %s:%s -->\n",
|
||||||
ptr2, trTitle, STR(tocRecord->file),
|
ptr2, trTitle, STR(tocRecord->file),
|
||||||
STR(tocRecord->line));
|
STR(tocRecord->line));
|
||||||
XtFree(ptr2);
|
free(ptr2);
|
||||||
XtFree(trTitle);
|
free(trTitle);
|
||||||
|
|
||||||
newTOCEntry.ord = STR(tocRecord->ord);
|
newTOCEntry.ord = STR(tocRecord->ord);
|
||||||
newTOCEntry.entry = lineBuf;
|
newTOCEntry.entry = lineBuf;
|
||||||
|
@ -1973,7 +1973,7 @@ makeTOC(char *id, char *title)
|
||||||
"<TOC id=\"%s\">\n"
|
"<TOC id=\"%s\">\n"
|
||||||
"<TITLE>%s</TITLE>\n",
|
"<TITLE>%s</TITLE>\n",
|
||||||
id, tocTitle);
|
id, tocTitle);
|
||||||
XtFree(tocTitle);
|
free(tocTitle);
|
||||||
|
|
||||||
level = -1;
|
level = -1;
|
||||||
|
|
||||||
|
@ -2034,8 +2034,8 @@ sgmlData(char *inData)
|
||||||
p2 = replaceData(p1, "<", "<");
|
p2 = replaceData(p1, "<", "<");
|
||||||
outData = replaceData(p2, ">", ">");
|
outData = replaceData(p2, ">", ">");
|
||||||
|
|
||||||
XtFree(p1);
|
free(p1);
|
||||||
XtFree(p2);
|
free(p2);
|
||||||
|
|
||||||
return outData;
|
return outData;
|
||||||
}
|
}
|
||||||
|
@ -2061,7 +2061,7 @@ replaceData(char *inData, char *replaceMe, char *replacement)
|
||||||
return XtsNewString(inData);
|
return XtsNewString(inData);
|
||||||
|
|
||||||
newLen = strlen(inData) + (i * (strlen(replacement) - replaceMeLen));
|
newLen = strlen(inData) + (i * (strlen(replacement) - replaceMeLen));
|
||||||
newData = XtMalloc((newLen + 1) * sizeof(char));
|
newData = malloc((newLen + 1) * sizeof(char));
|
||||||
newData[0] = '\0';
|
newData[0] = '\0';
|
||||||
p = inData;
|
p = inData;
|
||||||
while ((endP = strstr(p, replaceMe)) != (char *)NULL)
|
while ((endP = strstr(p, replaceMe)) != (char *)NULL)
|
||||||
|
@ -2091,7 +2091,7 @@ addTOCEntry(TOCEntry **tocEntries, int *nTOCEntries, int *maxEntries,
|
||||||
TOCEntry *newArray;
|
TOCEntry *newArray;
|
||||||
|
|
||||||
newArray =
|
newArray =
|
||||||
(TOCEntry *)XtRealloc((char *)*tocEntries,
|
(TOCEntry *)realloc((char *)*tocEntries,
|
||||||
(*maxEntries + 10) * sizeof(TOCEntry));
|
(*maxEntries + 10) * sizeof(TOCEntry));
|
||||||
if (!newArray)
|
if (!newArray)
|
||||||
return;
|
return;
|
||||||
|
@ -2128,11 +2128,11 @@ freeTOCEntries(TOCEntry *tocEntries, int nTOCEntries)
|
||||||
|
|
||||||
for (i = 0; i < nTOCEntries; i++)
|
for (i = 0; i < nTOCEntries; i++)
|
||||||
{
|
{
|
||||||
XtFree(tocEntries[i].ord);
|
free(tocEntries[i].ord);
|
||||||
XtFree(tocEntries[i].entry);
|
free(tocEntries[i].entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
XtFree((char *)tocEntries);
|
free((char *)tocEntries);
|
||||||
}
|
}
|
||||||
|
|
||||||
static TOCRecord *
|
static TOCRecord *
|
||||||
|
@ -2143,11 +2143,11 @@ getTOCRecord(FILE *fp)
|
||||||
TOCRecord *tocRecord;
|
TOCRecord *tocRecord;
|
||||||
char *ptr;
|
char *ptr;
|
||||||
|
|
||||||
tocRecord = (TOCRecord *)XtMalloc(sizeof(TOCRecord));
|
tocRecord = (TOCRecord *)malloc(sizeof(TOCRecord));
|
||||||
|
|
||||||
if (fgets(lineBuf, MAXPATHLEN, fp) == (char *)NULL)
|
if (fgets(lineBuf, MAXPATHLEN, fp) == (char *)NULL)
|
||||||
{
|
{
|
||||||
XtFree((char *)tocRecord);
|
free((char *)tocRecord);
|
||||||
return (TOCRecord *)NULL;
|
return (TOCRecord *)NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2155,20 +2155,20 @@ getTOCRecord(FILE *fp)
|
||||||
|
|
||||||
if (fgets(lineBuf, MAXPATHLEN, fp) == (char *)NULL)
|
if (fgets(lineBuf, MAXPATHLEN, fp) == (char *)NULL)
|
||||||
{
|
{
|
||||||
XtFree((char *)tocRecord);
|
free((char *)tocRecord);
|
||||||
return (TOCRecord *)NULL;
|
return (TOCRecord *)NULL;
|
||||||
}
|
}
|
||||||
cols = atoi(lineBuf);
|
cols = atoi(lineBuf);
|
||||||
|
|
||||||
if (cols < TOC_REC_COLS)
|
if (cols < TOC_REC_COLS)
|
||||||
{
|
{
|
||||||
XtFree((char *)tocRecord);
|
free((char *)tocRecord);
|
||||||
return (TOCRecord *)NULL;
|
return (TOCRecord *)NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DISCARD first item (book). */
|
/* DISCARD first item (book). */
|
||||||
ptr = getTOCField(fp);
|
ptr = getTOCField(fp);
|
||||||
XtFree(ptr);
|
free(ptr);
|
||||||
cols--;
|
cols--;
|
||||||
|
|
||||||
tocRecord->loc = getTOCField(fp);
|
tocRecord->loc = getTOCField(fp);
|
||||||
|
@ -2189,7 +2189,7 @@ getTOCRecord(FILE *fp)
|
||||||
while (cols > 0)
|
while (cols > 0)
|
||||||
{
|
{
|
||||||
ptr = getTOCField(fp);
|
ptr = getTOCField(fp);
|
||||||
XtFree(ptr);
|
free(ptr);
|
||||||
cols--;
|
cols--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2199,13 +2199,13 @@ getTOCRecord(FILE *fp)
|
||||||
static void
|
static void
|
||||||
freeTOCRecord(TOCRecord *tocRecord)
|
freeTOCRecord(TOCRecord *tocRecord)
|
||||||
{
|
{
|
||||||
XtFree(tocRecord->loc);
|
free(tocRecord->loc);
|
||||||
XtFree(tocRecord->file);
|
free(tocRecord->file);
|
||||||
XtFree(tocRecord->line);
|
free(tocRecord->line);
|
||||||
XtFree(tocRecord->ord);
|
free(tocRecord->ord);
|
||||||
XtFree(tocRecord->title);
|
free(tocRecord->title);
|
||||||
|
|
||||||
XtFree((char *)tocRecord);
|
free((char *)tocRecord);
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static char *
|
||||||
|
@ -2264,7 +2264,7 @@ getTOCField(FILE *fp)
|
||||||
appendStr(&longField, &lfLen, &maxLen, "#");
|
appendStr(&longField, &lfLen, &maxLen, "#");
|
||||||
appendStr(&longField, &lfLen, &maxLen, ptr);
|
appendStr(&longField, &lfLen, &maxLen, ptr);
|
||||||
|
|
||||||
XtFree(ptr);
|
free(ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr = longField;
|
ptr = longField;
|
||||||
|
@ -2313,7 +2313,7 @@ getTOCField(FILE *fp)
|
||||||
ptr = XtsNewString(ptr);
|
ptr = XtsNewString(ptr);
|
||||||
|
|
||||||
if (longField != (char *)NULL)
|
if (longField != (char *)NULL)
|
||||||
XtFree(longField);
|
free(longField);
|
||||||
|
|
||||||
return ptr;
|
return ptr;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue