x11-toolkits/xforms. That bug was fixed earlier today. Make sure, this builds with both erroneous as well as corrected xforms. Fix the problems with parallelized build -- by replacing the upstream's rudimentary Imakefiles with a BSDmakefile. Relocate application's help- files into DOCSDIR. Fix compiler warnings up to WARNS=3 and a few genuine (if ancient) bugs, that this process revealed. Bump PORTREVISION and unbreak.
505 lines
14 KiB
Text
505 lines
14 KiB
Text
--- flx/flx_show_dialog/flx_show_dialog.c 1998-01-11 10:51:40.000000000 -0500
|
|
+++ flx/flx_show_dialog/flx_show_dialog.c 2015-03-09 00:09:19.000000000 -0400
|
|
@@ -56,6 +56,6 @@
|
|
** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
|
|
-
|
|
-#include "forms.h"
|
|
+#include <stdlib.h>
|
|
+#include <forms.h>
|
|
#include "flx.h"
|
|
#include "flx_show_dialog.h" /* Internal to this routine */
|
|
@@ -68,9 +68,4 @@
|
|
|
|
static void usage();
|
|
-void flx_set_dialog_lcol();
|
|
-void flx_set_dialog_font();
|
|
-void flx_set_dialog_color();
|
|
-void flx_set_dialog_bgcolor();
|
|
-
|
|
|
|
|
|
--- flx/flx_util/flx_justify_input.c 1998-02-20 20:00:26.000000000 -0500
|
|
+++ flx/flx_util/flx_justify_input.c 2015-03-08 23:15:09.000000000 -0400
|
|
@@ -30,13 +30,10 @@
|
|
|
|
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
-
|
|
-void flx_justify_input(FL_OBJECT *input_obj, char *string, int STYLE, int SIZE);
|
|
-
|
|
-
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
-void flx_justify_input(FL_OBJECT *input_obj, char *string, int STYLE, int SIZE)
|
|
+void flx_justify_input(FL_OBJECT *input_obj, const char *string, int STYLE, int SIZE)
|
|
--- flx/flx_util/flx_scale_form.c 1997-09-02 21:57:24.000000000 -0400
|
|
+++ flx/flx_util/flx_scale_form.c 2015-03-08 23:18:56.000000000 -0400
|
|
@@ -22,5 +22,5 @@
|
|
|
|
-
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
|
|
#include <stdio.h>
|
|
@@ -29,7 +30,4 @@
|
|
|
|
|
|
-void flx_scale_form(FL_FORM *form);
|
|
-
|
|
-
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
/* Scales a form based on the current font */
|
|
--- flx/flx_filebox/flx_filebox.c 1998-02-21 12:38:23.000000000 -0500
|
|
+++ flx/flx_filebox/flx_filebox.c 2015-03-08 23:29:18.000000000 -0400
|
|
@@ -59,5 +59,5 @@
|
|
#include <unistd.h>
|
|
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
#include "flx.h"
|
|
#include "flx_filebox.h"
|
|
@@ -65,7 +65,4 @@
|
|
#define USE_COLOR 1
|
|
|
|
-
|
|
-
|
|
-
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
char *flx_filebox(const char *directory,
|
|
@@ -272,5 +269,5 @@
|
|
fl_set_object_posthandler(theForm->file_input, change_focus);
|
|
|
|
- if ((default_file != "") && (default_file != NULL)) {
|
|
+ if (default_file != NULL && default_file[0] != '\0') {
|
|
fl_set_input(theForm->file_input, default_file);
|
|
flx_justify_input (theForm->file_input, default_file,
|
|
@@ -589,21 +586,18 @@
|
|
struct dirent **dir_s;
|
|
int i, numEntries;
|
|
-
|
|
- struct stat *stat_buf = (struct stat *) vmalloc (sizeof(struct stat));
|
|
+
|
|
+ struct stat *stat_buf = vmalloc (sizeof(struct stat));
|
|
int filetype;
|
|
|
|
char *sfile;
|
|
- char *file_color = "@C0"; /* default black */
|
|
- char *link_color = "@C0";
|
|
- char *dir_color = "@C0";
|
|
- char *chardev_color = "@C0";
|
|
- char *blockdev_color = "@C0";
|
|
- char *socket_color = "@C0";
|
|
- char *fifo_color = "@C0";
|
|
+ const char *file_color = "@C0"; /* default black */
|
|
+ const char *link_color = "@C0";
|
|
+ const char *dir_color = "@C0";
|
|
+ const char *chardev_color = "@C0";
|
|
+ const char *blockdev_color = "@C0";
|
|
+ const char *socket_color = "@C0";
|
|
+ const char *fifo_color = "@C0";
|
|
|
|
char *currentFile;
|
|
- int currentWidth, maxWidth = 0;
|
|
- int min_browser_width = 175;
|
|
-
|
|
|
|
if (USE_COLOR) {
|
|
@@ -656,5 +650,5 @@
|
|
*/
|
|
|
|
- currentFile = (char *) vmalloc (strlen(theForm->dir) + strlen("/") +
|
|
+ currentFile = vmalloc (strlen(theForm->dir) + strlen("/") +
|
|
strlen(dir_s[i]->d_name) + 1);
|
|
sprintf(currentFile, "%s/%s", theForm->dir, dir_s[i]->d_name);
|
|
@@ -683,5 +677,5 @@
|
|
|
|
/* Filename used for display in filebox: add color */
|
|
- sfile = (char *) vmalloc (strlen(dir_s[i]->d_name) + 3 + 1);
|
|
+ sfile = vmalloc (strlen(dir_s[i]->d_name) + 3 + 1);
|
|
|
|
switch (filetype) {
|
|
@@ -761,18 +755,5 @@
|
|
free(stat_buf);
|
|
|
|
-
|
|
-/*
|
|
- if (maxWidth > min_browser_width) {
|
|
- fl_set_object_geometry(theForm->file_browser,
|
|
- 230, 40, wide_string_p + 20, 165);
|
|
- }
|
|
- else {
|
|
- fl_set_object_geometry(theForm->file_browser,
|
|
- 230, 40, 190, 165);
|
|
- }
|
|
-*/
|
|
-
|
|
fl_unfreeze_form(theForm->main);
|
|
-
|
|
|
|
} /* end function parse_dir() */
|
|
@@ -804,5 +785,5 @@
|
|
|
|
|
|
- chunk = (void *) malloc (chunk_size);
|
|
+ chunk = malloc (chunk_size);
|
|
if (chunk == NULL) {
|
|
perror("flx_filebox");
|
|
--- flx/flx.h 1997-11-10 22:57:34.000000000 -0500
|
|
+++ flx/flx.h 2015-03-08 23:32:37.000000000 -0400
|
|
@@ -61,4 +61,16 @@
|
|
extern FL_FORM *flx_help_dialog(const char *help_text);
|
|
|
|
+int flx_show_dialog (const char *type_str, const char *message_str);
|
|
+void flx_set_dialog_bgcolor (int theBgColor);
|
|
+void flx_set_dialog_color (int theInactiveColor, int theActiveColor);
|
|
+void flx_set_dialog_font (int theLabelStyle, int theLabelSize);
|
|
+void flx_set_dialog_lcol (int theLabelColor);
|
|
+
|
|
+void flx_justify_input(FL_OBJECT *input_obj, const char *string, int STYLE, int SIZE);
|
|
+
|
|
+void flx_scale_form(FL_FORM *form);
|
|
+char *flx_filebox(const char *dir, const char *pattern, const char *default_file);
|
|
+
|
|
+char *flx_show_input (int type, const char *message_str, const char *initial);
|
|
|
|
#endif /* FLX_H */
|
|
--- flx/flx_filebox/flx_filebox.h 1997-09-03 22:28:48.000000000 -0400
|
|
+++ flx/flx_filebox/flx_filebox.h 2015-03-08 23:37:08.000000000 -0400
|
|
@@ -55,5 +55,4 @@
|
|
static void FilterCB (FL_OBJECT *ob, long data);
|
|
static void LocationCB (FL_OBJECT *ob, long data);
|
|
-static void QuitCB (FL_OBJECT *ob, long data);
|
|
|
|
/*
|
|
--- src/build_pages.c 1998-02-22 22:53:11.000000000 -0500
|
|
+++ src/build_pages.c 2015-03-09 00:15:48.000000000 -0400
|
|
@@ -1,3 +1,4 @@
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
#include "xfpovray.h"
|
|
#include "pov-defaults.h"
|
|
--- flx/flx_show_dialog/flx_show_input.c 1998-01-31 20:39:42.000000000 -0500
|
|
+++ flx/flx_show_dialog/flx_show_input.c 2015-03-09 00:36:57.000000000 -0400
|
|
@@ -48,6 +48,6 @@
|
|
** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
|
|
-
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
#include "question.xpm"
|
|
|
|
@@ -58,10 +58,4 @@
|
|
extern int FLX_DIALOG_LSTYLE;
|
|
extern int FLX_DIALOG_LSIZE;
|
|
-
|
|
-void flx_set_dialog_lcol();
|
|
-void flx_set_dialog_font();
|
|
-void flx_set_dialog_color();
|
|
-void flx_set_dialog_bgcolor();
|
|
-
|
|
|
|
|
|
@@ -73,5 +67,4 @@
|
|
FL_OBJECT *obj, *obj_input, *ret;
|
|
|
|
- int button_width = 70;
|
|
int button_height = 25;
|
|
int min_x = 180;
|
|
@@ -82,6 +75,4 @@
|
|
|
|
int label_width, label_height;
|
|
- int button_label_width, button_label_height;
|
|
- int status = 0;
|
|
int form_x, form_y, yoffset, ymax_height;
|
|
char **discriminator;
|
|
--- src/xfpovray.h 1998-02-22 23:29:43.000000000 -0500
|
|
+++ src/xfpovray.h 2015-03-09 00:39:07.000000000 -0400
|
|
@@ -140,8 +140,10 @@
|
|
void YesNoCB (FL_OBJECT *obj, long data);
|
|
|
|
-/*
|
|
+/*
|
|
** Other utility functions
|
|
*/
|
|
-void write_config (char *ini_file);
|
|
+
|
|
+int read_config(const char *ini_file);
|
|
+void write_config (const char *ini_file);
|
|
void show_image (void);
|
|
void save_state (void);
|
|
@@ -320,3 +322,7 @@
|
|
#endif
|
|
|
|
+int tokenize(char *command_string, char *tokenlist[], size_t maxtoken);
|
|
+char *strtruncate (char *string, char endat);
|
|
+
|
|
+void showtip(FL_OBJECT *ob, char *s);
|
|
#endif /* XFPOVRAY_H */
|
|
--- src/callbacks.c 1998-02-22 22:33:45.000000000 -0500
|
|
+++ src/callbacks.c 2015-03-09 00:38:37.000000000 -0400
|
|
@@ -3,6 +3,7 @@
|
|
*/
|
|
|
|
-
|
|
-#include "forms.h"
|
|
+#include <time.h>
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
#include "xfpovray.h"
|
|
#include "pov-defaults.h"
|
|
@@ -29,10 +30,6 @@
|
|
extern char *TEMP_FILE;
|
|
|
|
-extern void write_config(char *ini_file);
|
|
extern int povray_pid;
|
|
extern int auto_view;
|
|
-extern void show_image(void);
|
|
-extern int PovCheckCB(XEvent *ev, void *data);
|
|
-extern void run_program (int count, ...);
|
|
|
|
struct preview_options {
|
|
@@ -157,5 +154,5 @@
|
|
temp = (char *) fl_calloc (1,
|
|
strlen(fl_get_input (xfData->sceneFileInput)) + 1);
|
|
- sprintf(temp, fl_get_input (xfData->sceneFileInput));
|
|
+ strcpy(temp, fl_get_input (xfData->sceneFileInput));
|
|
|
|
path = (char *) fl_calloc (1, strlen(temp) + 1);
|
|
@@ -168,5 +165,5 @@
|
|
}
|
|
basename = (char *) fl_calloc (1, strlen(tokenList[i])+1);
|
|
- sprintf(basename, tokenList[i]);
|
|
+ strcpy(basename, tokenList[i]);
|
|
strtruncate (basename, '.');
|
|
strcat(basename, ".ini");
|
|
@@ -607,5 +604,4 @@
|
|
void GetFileCB(FL_OBJECT *ob, long data)
|
|
{
|
|
- int pid, type;
|
|
char *temp;
|
|
|
|
@@ -805,5 +801,5 @@
|
|
char temp[256];
|
|
char buf[256];
|
|
- int i, pid, key;
|
|
+ int key;
|
|
char *t;
|
|
|
|
@@ -1219,5 +1215,4 @@
|
|
void QuitCB(FL_OBJECT *ob, long data)
|
|
{
|
|
- int pid;
|
|
char *temp;
|
|
int menuItem = fl_get_menu(ob);
|
|
--- src/config.c 1998-02-22 23:38:31.000000000 -0500
|
|
+++ src/config.c 2015-03-09 00:45:15.000000000 -0400
|
|
@@ -3,5 +3,7 @@
|
|
*/
|
|
|
|
-#include "forms.h"
|
|
+#include <stdlib.h>
|
|
+#include <forms.h>
|
|
+#include "flx.h"
|
|
#include "xfpovray.h"
|
|
#include "pov-defaults.h"
|
|
@@ -29,14 +31,12 @@
|
|
** Function to write the POV-Ray configuration file
|
|
*/
|
|
-void write_config(char *ini_file)
|
|
+void write_config(const char *ini_file)
|
|
{
|
|
FILE *options_file;
|
|
- int i, do_free = FALSE;
|
|
-
|
|
-
|
|
+ int i;
|
|
+
|
|
+
|
|
if (ini_file == NULL) {
|
|
- ini_file = (char *) fl_calloc (1, strlen(POV_INIFILE) + 1);
|
|
- sprintf(ini_file, "%s", POV_INIFILE);
|
|
- do_free = TRUE;
|
|
+ ini_file = POV_INIFILE;
|
|
}
|
|
|
|
@@ -228,9 +228,4 @@
|
|
fl_load_browser (configPage->configBrowser, ini_file);
|
|
fl_unfreeze_form (configPage->form);
|
|
-
|
|
- if (do_free)
|
|
- free (ini_file);
|
|
-
|
|
-
|
|
}
|
|
|
|
@@ -240,5 +235,5 @@
|
|
** Function to read the POV-Ray configuration file, and update widget values
|
|
*/
|
|
-int read_config(char *ini_file)
|
|
+int read_config(const char *ini_file)
|
|
{
|
|
|
|
--- src/run_program.c 1998-01-31 17:24:36.000000000 -0500
|
|
+++ src/run_program.c 2015-03-08 23:02:20.000000000 -0400
|
|
@@ -11,7 +11,11 @@
|
|
*/
|
|
|
|
+#include <err.h>
|
|
#include <stdarg.h>
|
|
+#include <stdlib.h>
|
|
#include <stdio.h>
|
|
-
|
|
+#include <unistd.h>
|
|
+#include <forms.h>
|
|
+#include "xfpovray.h"
|
|
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
@@ -24,5 +26,4 @@
|
|
|
|
-
|
|
- arg_list = (char **) malloc ((count + 1) * sizeof(char *));
|
|
+ arg_list = malloc ((count + 1) * sizeof(char *));
|
|
if (arg_list == NULL) {
|
|
perror ("run_program");
|
|
@@ -49,18 +51,15 @@
|
|
** Run the program as a child process
|
|
*/
|
|
- pid = fork();
|
|
+ pid = vfork();
|
|
if (pid == 0) {
|
|
if (execvp (program, arg_list) == -1) {
|
|
- fprintf (stderr, "\nrun: could not exec() %s\n", arg_list[0]);
|
|
+ err(255, "\nrun: could not exec() %s", arg_list[0]);
|
|
/* sigchld catcher handles the error */
|
|
- _exit (255);
|
|
}
|
|
}
|
|
else if (pid < 0)
|
|
- fprintf (stderr, "\nrun: could not fork()\n");
|
|
+ warn("\nrun: could not vfork()");
|
|
|
|
free (arg_list);
|
|
-
|
|
-
|
|
return;
|
|
}
|
|
--- src/state.c 1998-02-23 00:26:07.000000000 -0500
|
|
+++ src/state.c 2015-03-09 01:07:31.000000000 -0400
|
|
@@ -4,7 +4,10 @@
|
|
*/
|
|
|
|
-
|
|
-#include "forms.h"
|
|
+#include <sys/param.h>
|
|
+#include <err.h>
|
|
+#include <forms.h>
|
|
#include <stdlib.h>
|
|
+
|
|
+#include "flx.h"
|
|
#include "xfpovray.h"
|
|
#include "pov-defaults.h"
|
|
@@ -36,23 +39,19 @@
|
|
{
|
|
FILE *state_file;
|
|
- char filename[256];
|
|
- char temp[256];
|
|
+ char filename[MAXPATHLEN];
|
|
int i;
|
|
|
|
|
|
/* Get home directory, and set filepath */
|
|
- sprintf (filename, "%s/.xfpovray/xfpovray.state", getenv("HOME"));
|
|
+ snprintf (filename, sizeof filename, "%s/.xfpovray/xfpovray.state", getenv("HOME"));
|
|
|
|
if ((state_file = fopen(filename, "w")) == NULL) {
|
|
- fprintf (stderr, "Unable to open %s for writing! State not saved.\n",
|
|
+ warn("Unable to open %s for writing! State not saved.",
|
|
filename);
|
|
return;
|
|
}
|
|
|
|
-
|
|
/* Write the current state */
|
|
- sprintf(temp, "; xfpovray %s, generated by state.c\n", xfp_version);
|
|
- fprintf (state_file, temp);
|
|
-
|
|
+ fprintf(state_file, "; xfpovray %s, generated by state.c\n", xfp_version);
|
|
|
|
/* Parsing */
|
|
@@ -63,6 +62,5 @@
|
|
fl_get_input (parsingPage->libpathInput[i]));
|
|
else
|
|
- fprintf (state_file, "library_path=NULL\n",
|
|
- fl_get_input (parsingPage->libpathInput[i]));
|
|
+ fprintf (state_file, "library_path=NULL\n");
|
|
}
|
|
|
|
@@ -142,5 +140,5 @@
|
|
|
|
if (strcmp(fl_get_input (tracingPage->antialiasThreshold), "") == 0)
|
|
- fprintf (state_file, "antialias_threshold=%d\n",
|
|
+ fprintf (state_file, "antialias_threshold=%f\n",
|
|
POV_ANTIALIAS_THRESHOLD);
|
|
else
|
|
@@ -155,5 +153,5 @@
|
|
|
|
if (strcmp(fl_get_input (tracingPage->jitterInput), "") == 0)
|
|
- fprintf (state_file, "jitter_amount=%d\n", POV_JITTER_AMOUNT);
|
|
+ fprintf (state_file, "jitter_amount=%f\n", POV_JITTER_AMOUNT);
|
|
else
|
|
fprintf (state_file, "jitter_amount=%s\n",
|
|
@@ -240,7 +238,7 @@
|
|
FILE *state_file;
|
|
char filename[512];
|
|
- int i, numLibs = 0;
|
|
+ int numLibs = 0;
|
|
char buf[80];
|
|
- char *key;
|
|
+ const char *key;
|
|
char *value;
|
|
const char delimiter[] = "=";
|
|
--- src/tips.c 1998-01-18 22:47:13.000000000 -0500
|
|
+++ src/tips.c 2015-03-09 01:10:51.000000000 -0400
|
|
@@ -1,5 +1,7 @@
|
|
-#include "forms.h"
|
|
+#include <forms.h>
|
|
#include <stdlib.h>
|
|
|
|
+#include "xfpovray.h"
|
|
+
|
|
extern int show_tips;
|
|
|
|
@@ -9,5 +11,6 @@
|
|
* use the post handler as a tipper
|
|
*/
|
|
-int post_handler(FL_OBJECT *ob, int event,
|
|
+static int
|
|
+post_handler(FL_OBJECT *ob, int event,
|
|
FL_Coord mx, FL_Coord my, int key, void *xev)
|
|
{
|
|
--- src/util.c 1998-02-21 20:57:40.000000000 -0500
|
|
+++ src/util.c 2015-03-09 01:15:38.000000000 -0400
|
|
@@ -6,5 +6,6 @@
|
|
#include <string.h>
|
|
|
|
-
|
|
+#include <forms.h>
|
|
+#include "xfpovray.h"
|
|
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
@@ -27,5 +28,5 @@
|
|
{
|
|
static char tokensep[] = "/";
|
|
- int tokencount;
|
|
+ size_t tokencount;
|
|
char *thistoken;
|
|
|