1. 25 Feb, 2022 1 commit
  2. 22 Nov, 2021 1 commit
  3. 05 Oct, 2021 1 commit
    • Tony Farrell's avatar
      Fix strncpy use problems · 85738710
      Tony Farrell authored
        Use of strncpy() in dtclcommmand.c not always dealing with excess
            string length correctly.  Resolved and now gives error messages if
           a user supplied string is too long.
      
         ACMM Version 3.70
      85738710
  4. 04 Sep, 2020 1 commit
  5. 21 Aug, 2020 36 commits
    • Tony Farrell's avatar
      Resove issues shown by testing of libgitlogger · 3f4486c0
      Tony Farrell authored and afarrell's avatar afarrell committed
             libgitlogger.so must link in the DITS library as well as GIT.
      3f4486c0
    • Tony Farrell's avatar
      Fix 64 bit errors in SDS array handling · 5b383870
      Tony Farrell authored and afarrell's avatar afarrell committed
      	SdsArrayGet Handling of SDS_INT/SDS_UINT was wrong when a
              long is 64 bits.  Switched to using UNT32.
              Also added support for SDS_I64/SDS_UI64.
      5b383870
    • Tony Farrell's avatar
      Fix bug in SdsArrayCell - was not setting result correcly for all cases · 90d8a60c
      Tony Farrell authored and afarrell's avatar afarrell committed
      	SdsArrayCell() was not working for integer arrays due to
      	failing to use Tcl_SetResult(), probably a bug from
      	version 3.61. Resolved.
      90d8a60c
    • Tony Farrell's avatar
      Fix problem loading images with changes for tcl 8.6 · f5fb18e6
      Tony Farrell authored and afarrell's avatar afarrell committed
         Version 3.64 changes  were crashing 2dFdr when loading a gif image.
      	Turned out to be the handling of a null format string - the
      	Tcl_Obj pointer is null and was causing a crash when getting
      	the string.  Fixed.   Added test_imagedisplay.tcl to test this,
      	and files it uses -  home_blue.gif and image_0_0.sds.
      f5fb18e6
    • InstTestAcc's avatar
      Fix problem in last change for Tcl 8.6 · 199d858d
      InstTestAcc authored and afarrell's avatar afarrell committed
         Previous fix did not work with Tk 8.6 - fixed.
      199d858d
    • Tony Farrell's avatar
      SDS photo image format code now presumed Tcl 8.4 or later · ea93d8ad
      Tony Farrell authored and afarrell's avatar afarrell committed
         dulsdsimg.c modified to presume Tk 8.4 or later only. Removes
      		dependencies on older Tk photo format calls which I
      		think are removed from about 8.6
      
      	NOTE - should revamp the rest of the code to remove any ability
      		to build with Tcl older then 8.4.
      ea93d8ad
    • mnb's avatar
      Added dtclmodule.c to the libdtcl_a_SOURCE library package in GNUMakefile.am · 4408a5da
      mnb authored and afarrell's avatar afarrell committed
      	Added dtclmodule.c to the libdtcl_a_SOURCE library package
              definition in GNUMakefile.am so that the DtclAppMainLoop routine
              is recognised during the compilation of drexec as well as the Tk
              version DtclAppTkMainLoop.
      4408a5da
    • Tony Farrell's avatar
      ERS_M_NOFMT flag deprecated, use ErsRepNF function instead · 40cc436a
      Tony Farrell authored and afarrell's avatar afarrell committed
             Starting to get into lots of trouble due to ERS_M_NOFMT flag and checks
              in modern complers which complain if you don't have a format string.   Use
              new ErsRepNF() function as an alternative.
      40cc436a
    • Keith's avatar
      Modified to build under Yosemite using Clang 6.0 and TclTk 8.6, which has... · 804005d1
      Keith authored and afarrell's avatar afarrell committed
      Modified to build under Yosemite using Clang 6.0 and TclTk 8.6, which has deprecated direct use of the Tcl interpreter result field
      
         This version was modified to build on Yosemite using the latest Clang
         compiler (6.0) and the latest Tcl/Tk (8.6). This needed a very large
         number of changes, mostly to code that made use of the - now deprecated -
         'result' flag of the tcl interpreter. All of these cases needed to be
         changed to use Tcl_SetResult() and Tcl_GetStringResult() in one way or
         another. At the same time, any other code that was generating warnings
         with this recent (and quite fussy) compiler was also modified. This
         version built on my laptop with no warnings at all.
      
         The files changed were:
      
         dtclbackgnd.c dtclbshareinit.c dtclcmderror.c dtclcommand.c dtcldits.c
         dtclersrep.c dtclload.c dtclmodule.c dtclreqnot.c dtclrunning.c dtclsds.c
         dtclsdsimg.c dtclshareinit.c dtclstdin.c dtcltk.c dtcltkscreeninfo.c
         gitloggerinit.C
      
         The file fix.py has been added to the sub-system, just for historical
         interest. It was used to replace as many references to "interp->result"
         in the code as was practical, and the remaining warnings from the compiler
         were fixed by hand. (Note that there were over 350 lines of code that
         contained "interp->result". About 80% (at a rough guess) were handled
         automatically. The rest were harder.
      804005d1
    • Tony Farrell's avatar
      Modify GNUmakefile.am to make build on Mavericks · afac2959
      Tony Farrell authored and afarrell's avatar afarrell committed
      	GNUmakefile.am must include $(X_CFLAGS) in AM_CPPFLAGS to ensure
      	X11 include files are picked up from non-standard locations, e.g.
      	on MacOsX mavericks.
      afac2959
    • Tony Farrell's avatar
      Improved logging around shutdown · 301a9af5
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Invoke DitsLogMsg() before each exit.
      301a9af5
    • Tony Farrell's avatar
      Use Tcl_Free for strings allcoated by Tcl_Merge · 119db005
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Ensure we use Tcl_Free() rather then free() for the results
      	of Tcl_Merge() - except where ckfree is used.
      119db005
    • Tony Farrell's avatar
      Fix problem in last release · 65acefd2
      Tony Farrell authored and afarrell's avatar afarrell committed
              Remove GNUmakefile which had sneaked in in the last version.
      65acefd2
    • mnb's avatar
      Added a #define macro to some files ready for use with Tk8.6 · dc6f5e0f
      mnb authored and afarrell's avatar afarrell committed
      	Added a #define macro to some files ready for use with Tk8.6
      dc6f5e0f
    • Tony Farrell's avatar
      Dont bail out on X errors - experimental · b7e88dec
      Tony Farrell authored and afarrell's avatar afarrell committed
      	dtcltk.c/DtclTk___XError() no longer causes the task to exit.  It is
      	  unclear if this was necessary.  We have no way of testing it.
      b7e88dec
    • Tony Farrell's avatar
      Fix bug in DtclSdsCell - it had never worked · 1dae096f
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Fix bug in DtclSdsCell() - it had never apparently worked before.
      1dae096f
    • Tony Farrell's avatar
      Fix tcl_precision issue in tcl 8.5 · 31adb947
      Tony Farrell authored and afarrell's avatar afarrell committed
      	In DtclGetSds(), use Tcl_PrintDouble() rather then accessing
      	tcl_precision ourselves.   Handle tcl_precision == 0 in Translate
      	command.
      31adb947
    • Tony Farrell's avatar
      Set local IMP_SCRATCH directory during tests · e3f5d593
      Tony Farrell authored and afarrell's avatar afarrell committed
      	dmakefile modified to ensure all tests use a IMP_SCRATCH set
      	to the local directory and to run cleanup before/after the set
      	of tests.
      e3f5d593
    • Tony Farrell's avatar
      Add extra logging. Fix bug in SdsArrayGet operation · 6004f0d5
      Tony Farrell authored and afarrell's avatar afarrell committed
             Add extra logging around DTCL_COMMAND invocation etc.
      
             Fix memory overrun error in DtclSdsArrayGet()
      6004f0d5
    • InstTestAcc's avatar
      Get autoconfigure for 2dfdr working · 2ccb80dd
      InstTestAcc authored and afarrell's avatar afarrell committed
      	Rename Makefile.am to GNUmakefile.am, since 2dfdr_ac is moving
      	to using this name all the time.  Add the various include files
      	and .msg files to the lists to be distrubted..
      2ccb80dd
    • Tony Farrell's avatar
      Remove shared library test on Solaris · a843b45a
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Don't run shared library tests on Solaris - they don't work.
      a843b45a
    • Tony Farrell's avatar
      Get timeouts working correctly · 1ff3d4b3
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Modified -error handler code (dtclcommand.c ErrorHandler) to pick up
      		 timeout case and set DTCL__TIMEOUT error code, rather then
      		 using STATUS__OK.  Also had to modify -wait completion handler
      		 to deal with this.
      
      	GetPath timeout now defaults to main timeout on obey/kick etc. commands.
      
      	(Both the above may cause compatilbity problems - but they were bugs)
      1ff3d4b3
    • Tony Farrell's avatar
      Ensure dependencies built correctly for tests · 6feae8ff
      Tony Farrell authored and afarrell's avatar afarrell committed
              Ensure everything needed for tests is built correctly.
      6feae8ff
    • Tony Farrell's avatar
      Fix bug in previous change · d2b8a0f4
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Enusre DTCL_DIR is set for tests
      d2b8a0f4
    • Tony Farrell's avatar
      Work on fixing and properly testing sharable library problems · 4b1e78fd
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Problems with the sharable library picked up - due to
      	wish not having Xinerama linked in.  This exposed that
      		1.  The libdtcl sharable only works from wish, not tclsh
      			(except on machines that don't complain until
      			routines are called)
      		2.  That we are not testing the basic sharable library
      			stuff in any way.
      
      	   So - we not create two new sharable libraries - libdtk, which
      		is meant for loading into wish, and libdtclb, for loading
      		into dtcl.  The idea is that libdtclb won't link in
      		any X11 stuff but must run in tclsh based shells, whilst
      		libdtk does use the X11 code, but must run in wish shells.
      		For compatiblity, still create libdtcl, which
      
      		dtkshareinit.c which implements Dtk_Init(), for libdtk
      		  shareable, and Dtcl_Init() for libdtcl sharable.  The
      		only difference is that Dtk_Init() also loads GitLogger, if
      		C++ is avialable.
      
      		dtclshareinit.c modfied to rename Dtcl_Init() to Dtclb_Init(),
      		and to extract most of its code into the new
      		Dtcl___ShareInit(), which does the common initialisation.
      
      		Added test scripts TestGitLogger.tcl, TestOrigShared.tcl,
      			TestTclShared.tcl, TestTkShared.tcl which load
      			the relevant sharables.  Added TestDtcl.tcl, a
      			test script meant to be more general, which is sourced
      			by each of these.  currently all it does is send
      			a message to TICKER.
      
      		Added test target to dmakefile, runs the test scripts.
      		Added the new sharbles, and link the libdtk and libdtcl against
      			all the X11 libaries, including Xinerama.
      
      	CURRENT ISSUES
      		1.  libdtclb is currently failing on mac due to linking
      			in DUL Fits image code.  NEed to work out how
      			to handle this.  Test is running but is not causing
      			release to fail.
      4b1e78fd
    • Tony Farrell's avatar
      Ensure build works when we don t have c++ · 64816c15
      Tony Farrell authored and afarrell's avatar afarrell committed
      	Bug in dmakefile - was using #ifdef HasCPlusPlus instead of #if.
      
      	Enusre success when we don't have C++
      64816c15
    • Tony Farrell's avatar
      Update for recent config sub-system changes · 191ce7f0
      Tony Farrell authored and afarrell's avatar afarrell committed
              Fix SRC<n> macro definitions in dmakefile.
      191ce7f0
    • Tony Farrell's avatar
      Fix doc error · ba7e2ef3
      Tony Farrell authored and afarrell's avatar afarrell committed
         Fix doc error for DitsGetTaskDescr.
      ba7e2ef3
    • Tony Farrell's avatar
      Fix commenting error and add new command to WFLMAN list · 91089578
      Tony Farrell authored and afarrell's avatar afarrell committed
         Fix doc error for DitsSetFixFlags - was named wrong in html pages.
      91089578
    • Tony Farrell's avatar
      Add Makefile.am · 1ca1c3fd
      Tony Farrell authored and afarrell's avatar afarrell committed
         Add Makefile.am - used by 2dFdr to autoconfigure DramaDits.
      1ca1c3fd
    • Keith's avatar
      Fixed buffer overflow errors in the Translate Tcl command · 0a37af4d
      Keith authored and afarrell's avatar afarrell committed
          A bug in TCS caused the GUI to crash if too long a string was set in an
          entry widget that was tested by 'Translate'. (Too long here means over
          240 characters, so it's not surprising this has passed unnoticed so long.)
          Basically, DtclTranslate was overflowing the result buffer if passed an
          invalid string that was too long. Added code to trap this, and also in
          DtclTrnName which was vulnerable if the symbol was too long. There are
          other cases where sprintf %s codes are used to set the result string,
          but in most of these it is option flags that are the problem and these
          are going to be picked up quickly in testing. I tried to spot the cases
          that were vulnerable to variable run-time data and fix them. A real fix
          would be to replace all code that sprintf()s to the result string by calls
          to Tcl_AppendResult(), but that's quite a bit of work.
      0a37af4d
    • Tony Farrell's avatar
      Improve const correctness · 7ca0fe60
      Tony Farrell authored and afarrell's avatar afarrell committed
          Improve const correctnees.
      7ca0fe60
    • InstTestAcc's avatar
      Fix problem for 2dfdr build · 22942bb1
      InstTestAcc authored and afarrell's avatar afarrell committed
           Fixt error in build for 2dFdr due to the Event trace functions used not existing
      	in older version of Tcl.
      22942bb1
    • Tony Farrell's avatar
      Expand SDS leak checking · 8687f6ac
      Tony Farrell authored and afarrell's avatar afarrell committed
           Use Tcl trace events to implement SDS leak checking around top-level Tcl
      	commands. As part of this - Create DtclTk___EventLoop()
              and added extra argument to DtclInputFromDits().
      
           Replace use of Tcl_GlobalEval by Dtcl___GlobalEval  in all sensible
             cases to expand SDS leak checking around all DRAMA event triggered
             tcl commands.
      8687f6ac
    • Tony Farrell's avatar
      Fix SdsID leak in pget commands · d5970bce
      Tony Farrell authored and afarrell's avatar afarrell committed
           Fix SDS ID leak in pget command.  Don't document -deletearg etc. for pget.
      
           Ensure pset long argument version handles -deletearg etc correctly.
      d5970bce
    • Tony Farrell's avatar
      Fix window positioning problem · 23aa1c38
      Tony Farrell authored and afarrell's avatar afarrell committed
           Ensure when positioning window under mouse on Xinerma screen we
           don't get too close to the bottom of right of screen.
      23aa1c38