* details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with these librararies and programs; if not, write
+ * License along with these libraries and programs; if not, write
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
* Floor, Boston, MA 02110-1301 USA
*/
** implied warranty.
**
******************************************************************************/
-#ifdef __osf__
-#include <stdlib.h> /* for getenv() function prototype */
-#endif
#include <sys/param.h>
#include <sys/stat.h>
#include <Xm/Xm.h>
if (debug)
stat_out("Entering Do_FileIO\n");
#endif
- pix_ret = NULL;
- shape_ret = NULL;
- mask_ret = NULL;
+ pix_ret = 0;
+ shape_ret = 0;
+ mask_ret = 0;
/* get file name */
if (SaveMeNot){
}
else /* wasn't in form "<host>:/<path>" so use name as is... */
{
- strcpy(fname, fnameIn);
+ snprintf(fname, sizeof(fname), "%s", fnameIn);
}
/*** - if we got a NULL base_name, return FALSE ***/
{
Process_Clear();
Process_Resize();
- strcpy(last_fname, fname);
+ snprintf(last_fname, sizeof(last_fname), "%s", fname);
ChangeTitle();
successFormat = FORMAT_NONE;
return True;
XmUpdateDisplay(mainWindow);
- pix_ret = NULL;
- shape_ret = NULL;
- mask_ret = NULL;
+ pix_ret = 0;
+ shape_ret = 0;
+ mask_ret = 0;
xpm_ReadAttribs.valuemask = READ_FLAGS;
xpm_ReadAttribs.colorsymbols = colorSymbols;
xpm_ReadAttribs.numsymbols = NUM_PENS;
/*** does a suffix exist? ***/
if (suffix) {
strncpy(dummy, fname, ((suffix-fname)-1));
- dummy[(int) (suffix-fname)-1] = NULL;
+ dummy[(int) (suffix-fname)-1] = '\0';
strcat(dummy, "_m.");
strcat(dummy, suffix);
#ifdef DEBUG
#endif
}
else {
- strcpy(dummy, fname);
- strcat(dummy, "_m");
+ snprintf(dummy, sizeof(dummy), "%s_m", fname);
}
#ifdef DEBUG
if (debug)
if (status == BitmapSuccess) {
if ((width_ret != mask_width_ret) || (height_ret != mask_height_ret)) {
XFreePixmap(dpy, mask_ret);
- mask_ret = NULL;
+ mask_ret = 0;
}
}
else
- mask_ret = NULL;
+ mask_ret = 0;
}
- strcpy(last_fname, fname);
+ snprintf(last_fname, sizeof(last_fname), "%s", fname);
ChangeTitle();
#ifdef DEBUG
int i, j;
int mask_needed;
Boolean SUN;
- char *base_name, *suffix, fname[256], *tmp, *tmp2, *vend;
+ char *base_name, *suffix, fname[MAXPATHLEN], *tmp, *tmp2, *vend;
Pixmap scratch_pix;
XImage *scratch_shape, *scratch_mask;
struct stat statbuf; /* Information on a file. */
netfile = tt_host_file_netfile(fnameIn, tmp+1);
localfile = tt_netfile_file(netfile);
- strncpy(fname, localfile, MAXPATHLEN);
+ strncpy(fname, localfile, MAXPATHLEN - 1);
+ fname[MAXPATHLEN - 1] = 0;
tmp[0] = ':';
tt_free(netfile);
}
else /* wasn't in form "<host>:/<path>" so use name as is... */
{
- strcpy(fname, fnameIn);
+ snprintf(fname, sizeof(fname), "%s", fnameIn);
}
base_name = (base_name ? base_name + 1 : fname);
}
- strcpy(last_fname, fname);
+ snprintf(last_fname, sizeof(last_fname), "%s", fname);
ChangeTitle();
#ifdef DEBUG
if (debug)
Dump_AttribStruct(&xpm_WriteAttribs);
#endif
- status = _DtXpmWriteFileFromPixmap(dpy, fname, color_icon, NULL,
+ status = _DtXpmWriteFileFromPixmap(dpy, fname, color_icon, 0,
&xpm_WriteAttribs);
/*******
/*** THIRD, construct the mask filename ***/
if (suffix) {
strncpy(dummy, fname, ((suffix-fname)-1));
- dummy[(int) (suffix-fname)-1] = NULL;
+ dummy[(int) (suffix-fname)-1] = '\0';
strcat(dummy, "_m.");
strcat(dummy, suffix);
}
else {
- strcpy(dummy, fname);
- strcat(dummy, "_m");
+ snprintf(dummy, sizeof(dummy), "%s_m", fname);
}
/*** FOURTH, construct XImages for the shape and mask bitmaps ***/
mask_needed = False;
icon_height = height;
fileFormat = FORMAT_XPM;
XmToggleButtonGadgetSetState(formatMenu_xpm_tb, True, True);
-/* This line is not realy needed since an Exposed event will be generated */
+/* This line is not really needed since an Exposed event will be generated */
Repaint_Exposed_Tablet();
XDestroyImage(scratch_img);
XFreePixmap(dpy, pix_ret);
icon_height = height;
fileFormat = FORMAT_XBM;
XmToggleButtonGadgetSetState(formatMenu_xbm_tb, True, True);
-/* This line is not realy needed since an Exposed event will be generated */
+/* This line is not really needed since an Exposed event will be generated */
Repaint_Exposed_Tablet();
if (mask_ret) {
XDestroyImage(test_img);
/* prepare to test */
tmp1 = strrchr(strOrig, '.');
- strcat(tmpStr, untitledStr);
- strcat(tmpStr, ".m.pm");
+ snprintf(tmpStr, sizeof(tmpStr), "%s.m.pm", untitledStr);
tst=strcmp(last_fname, tmpStr);
if ( tst==0 ) {/* untitled */
if ( tmp1 ) { /* previous string exists */
- if (currentTitle != SAVE_AS) strcat(newName, strOrig);
- else {
- strcat(newName, untitledStr);
- strcat(newName, ".m.pm");}
+ if (currentTitle != SAVE_AS) {
+ snprintf(newName, sizeof(newName), "%s", strOrig);
+ } else {
+ snprintf(newName, sizeof(newName), "%s.m.pm", untitledStr);
+ }
/* Update the FSB */
XmFileSelectionDoSearch(fileIODialog,(XmString)NULL);
}
else { /* First time arownd */
if (strOrig && strOrig[0]!='\0')
- strcat(newName, strOrig);
+ snprintf(newName, sizeof(newName), "%s", strOrig);
else {
- strcat(newName, untitledStr);
- strcat(newName, ".m.pm");
+ snprintf(newName, sizeof(newName), "%s.m.pm", untitledStr);
}
XSync(dpy, 0);
*/
c = tmp1[1];
tmp2 = strchr(tmp1, c);
- strcpy(newName, tmp2);
+ if(tmp2) {
+ snprintf(newName, sizeof(newName), "%s", tmp2);
+ }
/* make and insert the directory name */
ln = strlen(last_fname) - strlen(tmp1);