openmotif need for xawtv
This commit is contained in:
@@ -0,0 +1,227 @@
|
||||
---
|
||||
clients/uil/UilDiags.c | 26 ++++++++++++++------------
|
||||
clients/uil/UilIODef.h | 2 +-
|
||||
clients/uil/UilSrcSrc.c | 18 +++++++++++-------
|
||||
tools/wml/Makefile.am | 6 ++++--
|
||||
tools/wml/Uil.y | 2 +-
|
||||
5 files changed, 31 insertions(+), 23 deletions(-)
|
||||
|
||||
--- a/clients/uil/UilDiags.c
|
||||
+++ b/clients/uil/UilDiags.c
|
||||
@@ -207,9 +207,9 @@ void diag_issue_diagnostic
|
||||
va_list ap; /* ptr to variable length parameter */
|
||||
int severity; /* severity of message */
|
||||
int message_number; /* message number */
|
||||
- char msg_buffer[132]; /* buffer to construct message */
|
||||
+ char *msg_buffer = 0; /* buffer to construct message */
|
||||
char ptr_buffer[buf_size]; /* buffer to construct pointer */
|
||||
- char loc_buffer[132]; /* buffer to construct location */
|
||||
+ char *loc_buffer = 0; /* buffer to construct location */
|
||||
char src_buffer[buf_size]; /* buffer to hold source line */
|
||||
|
||||
/*
|
||||
@@ -293,19 +293,18 @@ void diag_issue_diagnostic
|
||||
va_start(ap, l_start_column);
|
||||
|
||||
#ifndef NO_MESSAGE_CATALOG
|
||||
- vsnprintf( msg_buffer, sizeof(msg_buffer),
|
||||
+ vasprintf(&msg_buffer,
|
||||
catgets(uil_catd, UIL_SET1, msg_cat_table[ message_number ],
|
||||
diag_rz_msg_table[ message_number ].ac_text),
|
||||
ap );
|
||||
#else
|
||||
- vsnprintf( msg_buffer, sizeof(msg_buffer),
|
||||
+ vasprintf(&msg_buffer,
|
||||
diag_rz_msg_table[ message_number ].ac_text,
|
||||
ap );
|
||||
#endif
|
||||
va_end(ap);
|
||||
|
||||
src_buffer[ 0 ] = 0;
|
||||
- loc_buffer[ 0 ] = 0;
|
||||
ptr_buffer[ 0 ] = 0;
|
||||
|
||||
if (az_src_rec != diag_k_no_source)
|
||||
@@ -317,13 +316,13 @@ void diag_issue_diagnostic
|
||||
*/
|
||||
|
||||
#ifndef NO_MESSAGE_CATALOG
|
||||
- sprintf( loc_buffer,
|
||||
+ asprintf(&loc_buffer,
|
||||
catgets(uil_catd, UIL_SET_MISC,
|
||||
UIL_MISC_0, "\t\t line: %d file: %s"),
|
||||
az_src_rec->w_line_number,
|
||||
src_get_file_name( az_src_rec ) );
|
||||
#else
|
||||
- sprintf( loc_buffer,
|
||||
+ asprintf(&loc_buffer,
|
||||
"\t\t line: %d file: %s",
|
||||
az_src_rec->w_line_number,
|
||||
src_get_file_name( az_src_rec ) );
|
||||
@@ -371,7 +370,7 @@ void diag_issue_diagnostic
|
||||
|
||||
if (l_start_column != diag_k_no_column)
|
||||
#ifndef NO_MESSAGE_CATALOG
|
||||
- sprintf(loc_buffer,
|
||||
+ asprintf(&loc_buffer,
|
||||
catgets(uil_catd, UIL_SET_MISC,
|
||||
UIL_MISC_1,
|
||||
"\t\t line: %d position: %d file: %s"),
|
||||
@@ -379,7 +378,7 @@ void diag_issue_diagnostic
|
||||
l_start_column + 1,
|
||||
src_get_file_name( az_src_rec ) );
|
||||
#else
|
||||
- sprintf(loc_buffer,
|
||||
+ asprintf(&loc_buffer,
|
||||
"\t\t line: %d position: %d file: %s",
|
||||
az_src_rec->w_line_number,
|
||||
l_start_column + 1,
|
||||
@@ -387,13 +386,13 @@ void diag_issue_diagnostic
|
||||
#endif
|
||||
else
|
||||
#ifndef NO_MESSAGE_CATALOG
|
||||
- sprintf( loc_buffer, catgets(uil_catd, UIL_SET_MISC,
|
||||
+ asprintf(&loc_buffer, catgets(uil_catd, UIL_SET_MISC,
|
||||
UIL_MISC_0,
|
||||
"\t\t line: %d file: %s"),
|
||||
az_src_rec->w_line_number,
|
||||
src_get_file_name( az_src_rec ) );
|
||||
#else
|
||||
- sprintf( loc_buffer,
|
||||
+ asprintf(&loc_buffer,
|
||||
"\t\t line: %d file: %s",
|
||||
az_src_rec->w_line_number,
|
||||
src_get_file_name( az_src_rec ) );
|
||||
@@ -406,7 +405,8 @@ void diag_issue_diagnostic
|
||||
*/
|
||||
|
||||
write_msg_to_standard_error
|
||||
- ( message_number, src_buffer, ptr_buffer, msg_buffer, loc_buffer );
|
||||
+ ( message_number, src_buffer, ptr_buffer, msg_buffer,
|
||||
+ loc_buffer ? loc_buffer : "");
|
||||
|
||||
/*
|
||||
** if we have a listing, place message in the source structure
|
||||
@@ -428,6 +428,8 @@ void diag_issue_diagnostic
|
||||
uil_exit( uil_k_severe_status );
|
||||
}
|
||||
|
||||
+ free (loc_buffer);
|
||||
+ free (msg_buffer);
|
||||
}
|
||||
|
||||
/*
|
||||
--- a/clients/uil/UilIODef.h
|
||||
+++ b/clients/uil/UilIODef.h
|
||||
@@ -75,7 +75,7 @@ typedef struct
|
||||
char *c_buffer;
|
||||
boolean v_position_before_get;
|
||||
z_key last_key;
|
||||
- char expanded_name[ 256 ];
|
||||
+ char *expanded_name;
|
||||
} uil_fcb_type;
|
||||
|
||||
#endif /* UilIODef_h */
|
||||
--- a/clients/uil/UilSrcSrc.c
|
||||
+++ b/clients/uil/UilSrcSrc.c
|
||||
@@ -271,6 +271,7 @@ Uil_src_cleanup_source(void)
|
||||
diag_k_no_source, diag_k_no_column,
|
||||
src_az_source_file_table[i]->expanded_name);
|
||||
}
|
||||
+ _free_memory (src_az_source_file_table[i]->expanded_name);
|
||||
_free_memory ((char*)src_az_source_file_table [i]);
|
||||
src_az_source_file_table[i] = NULL;
|
||||
}
|
||||
@@ -626,13 +627,13 @@ open_source_file( XmConst char
|
||||
static unsigned short main_dir_len = 0;
|
||||
boolean main_file;
|
||||
int i; /* loop index through include files */
|
||||
- char buffer[256];
|
||||
+ char *buffer;
|
||||
|
||||
|
||||
/* place the file name in the expanded_name buffer */
|
||||
|
||||
- strncpy(buffer, c_file_name, sizeof(buffer));
|
||||
- buffer[sizeof(buffer)-1] = '\0';
|
||||
+ buffer = _get_memory (strlen (c_file_name) + 1);
|
||||
+ strcpy (buffer, c_file_name);
|
||||
|
||||
/* Determine if this is the main file or an include file. */
|
||||
|
||||
@@ -674,11 +675,10 @@ open_source_file( XmConst char
|
||||
}
|
||||
|
||||
if (!specific_directory) {
|
||||
+ buffer = XtRealloc (buffer, main_dir_len + strlen (c_file_name) + 1);
|
||||
_move (buffer, main_fcb -> expanded_name, main_dir_len);
|
||||
_move (& buffer [main_dir_len],
|
||||
c_file_name, strlen (c_file_name) + 1); /* + NULL */
|
||||
- } else {
|
||||
- strcpy (buffer, c_file_name);
|
||||
}
|
||||
|
||||
/* Open the include file. */
|
||||
@@ -701,6 +701,7 @@ open_source_file( XmConst char
|
||||
if (inc_dir_len == 0) {
|
||||
search_user_include = False;
|
||||
}
|
||||
+ buffer = XtRealloc (buffer, inc_dir_len + strlen (c_file_name) + 1);
|
||||
_move (buffer, Uil_cmd_z_command.ac_include_dir[i], inc_dir_len);
|
||||
|
||||
/* Add '/' if not specified at end of directory */
|
||||
@@ -724,6 +725,7 @@ open_source_file( XmConst char
|
||||
|
||||
/* Look in the default include directory. */
|
||||
if (search_user_include) {
|
||||
+ buffer = XtRealloc (buffer, sizeof c_include_dir - 1 + strlen (c_file_name) + 1);
|
||||
_move(buffer, c_include_dir, sizeof c_include_dir - 1); /* no NULL */
|
||||
_move(&buffer[sizeof c_include_dir - 1],
|
||||
c_file_name, strlen (c_file_name) + 1); /* + NULL */
|
||||
@@ -737,14 +739,16 @@ open_label:
|
||||
|
||||
/* check the open status. */
|
||||
|
||||
- if (az_fcb->az_file_ptr == NULL)
|
||||
+ if (az_fcb->az_file_ptr == NULL) {
|
||||
+ _free_memory (buffer);
|
||||
return src_k_open_error;
|
||||
+ }
|
||||
|
||||
/* open succeeded - place buffer address in fcb */
|
||||
|
||||
az_fcb->c_buffer = az_source_buffer->c_text;
|
||||
az_fcb->c_buffer[ src_k_max_source_line_length ] = 0;
|
||||
- strcpy(az_fcb->expanded_name, buffer);
|
||||
+ az_fcb->expanded_name = buffer;
|
||||
|
||||
return src_k_open_normal;
|
||||
}
|
||||
--- a/tools/wml/Makefile.am
|
||||
+++ b/tools/wml/Makefile.am
|
||||
@@ -43,10 +43,12 @@ wmllex.c: wmllex.l
|
||||
|
||||
$(srcdir)/wmldbcreate.c: $(WMLTARGETS) UilLexPars.h
|
||||
|
||||
-UilLexPars.h: UilLexPars.c
|
||||
+UilLexPars.h: Uil.h
|
||||
+ rm -f $@
|
||||
+ $(LN_S) Uil.h UilLexPars.h
|
||||
|
||||
UilLexPars.c: Uil.c
|
||||
- $(LN_S) Uil.h UilLexPars.h
|
||||
+ rm -f $@
|
||||
$(LN_S) Uil.c UilLexPars.c
|
||||
|
||||
$(WMLTARGETS): wmluiltok wml UilLexPars.c $(TABLE)
|
||||
--- a/tools/wml/Uil.y
|
||||
+++ b/tools/wml/Uil.y
|
||||
@@ -559,7 +559,7 @@ control_object_definition
|
||||
|
||||
object_specification
|
||||
: CLASS_NAME
|
||||
- { sar_set_object_class (&$1); }
|
||||
+ { sar_set_object_class (&$1); $$ = gz_yynullval; }
|
||||
opt_create_proc_ref
|
||||
opt_variant
|
||||
object_spec
|
||||
Reference in New Issue
Block a user