patch-wmcalcswitch_c 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. $OpenBSD: patch-wmcalcswitch_c,v 1.2 2001/01/19 18:50:14 naddy Exp $
  2. --- wmcalcswitch.c.orig Fri Nov 10 02:05:00 2000
  3. +++ wmcalcswitch.c Fri Jan 19 18:33:44 2001
  4. @@ -388,8 +388,8 @@ ButtonArea getboundaries(char ch) {
  5. int write_config(void) {
  6. extern int Verbose;
  7. extern double MemArray[];
  8. - extern char configfile[];
  9. - extern char tempfile[];
  10. + extern char configfile[];
  11. + extern char tempfile[CONFIGFILEMAX];
  12. extern char *CfgVarList[];
  13. FILE *fp, *fptmp;
  14. char *line = NULL;
  15. @@ -406,8 +406,8 @@ int write_config(void) {
  16. /* Open Temporary File */
  17. if ((fptmp = fopen(tempfile, "w")) == NULL) { // Can't open file in /tmp
  18. fprintf(stderr, "%s: Temporary File Open Failed\n", tempfile);
  19. - strcpy(tempfile, getenv("HOME"));
  20. - strcat(tempfile, "wmcalc.tmp");
  21. + strlcpy(tempfile, getenv("HOME"), sizeof(tempfile));
  22. + strlcat(tempfile, "wmcalc.tmp", sizeof(tempfile));
  23. if ((fptmp = fopen(tempfile, "w")) == NULL) { // Can't open file in HOME
  24. fprintf(stderr, "%s: Temporary File Open Failed\n", tempfile);
  25. return(ERR_TMP_FILE_FAILED);
  26. @@ -439,7 +439,7 @@ int write_config(void) {
  27. /* Copy temp file over original */
  28. /* Note: If changing command, make sure to adjust size of string above!! */
  29. - sprintf(movefilecmd, "mv -f %s %s\n", tempfile, configfile);
  30. + snprintf(movefilecmd, sizeof(movefilecmd), "mv -f %s %s\n", tempfile, configfile);
  31. err_code = system(movefilecmd);
  32. if(Verbose) printf("New config file written.\n");
  33. @@ -468,7 +468,7 @@ int read_config(void) {
  34. extern char *CfgVarList[];
  35. extern char ImagChar;
  36. extern char configfile[];
  37. - extern char SysCalcCmd[];
  38. + extern char SysCalcCmd[CALC_CMD_SIZE];
  39. FILE *fp;
  40. int i = 0;
  41. int err_code = OKAY;
  42. @@ -561,7 +561,7 @@ int read_config(void) {
  43. case CALC_LABEL:
  44. /* Set external calculator start command */
  45. - strcpy(SysCalcCmd, cfg_var_ptr);
  46. + strlcpy(SysCalcCmd, cfg_var_ptr, sizeof(SysCalcCmd));
  47. if (Verbose)
  48. printf("Assign Calc Command: %s\n", cfg_var_ptr);
  49. break;