Cannot Verify Malware is not present in download
So I think that moving over some frozen track and clicking or rapid clicking on different objects in Describe Command may trigger this problem.
I am wondering if we get a race between the first track/draw Describe (which closes the window) and the second (which "re"opens it) and in the process the trk which is in static can be overwritten and cause the subsequent calls to have a NULL track. If C_START runs (new command) or C_DOWN runs or ActionMove (if the track being hovered over) is frozen they all clear trk. But If the previous call instance was inside DescribeTrack while this happened and then ran (because, the click was fast enough...
I am wondering if we get overlap between the first track/draw Describe (which closes the window) and the second (which "re"opens it) and in the process the trk which is in static can be overwritten and cause the subsequent calls to have a NULL track.
So if I don't close the Describe window first and then open a new Describe I eventually get the bad address program failure (5 or so interations). If I do close the Describe window I get the message about the track not being the right type failure eventually (5 or so iterations). Too late to do more today. Attached is the xtc I am using.
So if I don't close the window first I eventually get the bad address program failure. If I do close the window I get the message about the track not being the right type failure eventually. Too late to do more today. Attached is the xtc I am using.
BackTrace frame #6: 0x00000001044d9fa1 XtrkCAD-bin`AbortProg + 257 frame #7: 0x000000010462d4ac XtrkCAD-bin`GetTrkExtraData + 252 frame #8: 0x00000001045252d9 XtrkCAD-bin`UpdateDraw + 41 frame #9: 0x000000010453c68a XtrkCAD-bin`DescribeDone + 186 frame #10: 0x000000010453d909 XtrkCAD-bin`CmdDescribe + 1385 frame #11: 0x0000000104541f7d XtrkCAD-bin`Reset + 205 frame #12: 0x0000000104543a7d XtrkCAD-bin`ResetIfNotSticky + 93 frame #13: 0x00000001045f7e01 XtrkCAD-bin`ParamCancel_Reset + 17 frame #14:...
BackTrace frame #6: 0x00000001044d9fa1 XtrkCAD-binAbortProg + 257 frame #7: 0x000000010462d4ac XtrkCAD-binGetTrkExtraData + 252 frame #8: 0x00000001045252d9 XtrkCAD-binUpdateDraw + 41 frame #9: 0x000000010453c68a XtrkCAD-binDescribeDone + 186 frame #10: 0x000000010453d909 XtrkCAD-binCmdDescribe + 1385 frame #11: 0x0000000104541f7d XtrkCAD-binReset + 205 frame #12: 0x0000000104543a7d XtrkCAD-binResetIfNotSticky + 93 frame #13: 0x00000001045f7e01 XtrkCAD-binParamCancel_Reset + 17 frame #14: 0x00000001045f8920...
Tried Describe-Draw-Object-1 ->Close->Describe-Draw-Object-2 in a loop. Third time around on the same two objects I got "trkType == T_NOTRACK || trk->type == trkType: /Users/kshaffer/src/xtrkcad/app/bin/track.c:458 Do you want to save your layout?" I had not altered anything.
Seems like the most obvious thing is that something reset trk in static to NULL soon before the GetTrkType call at line 645. The simplest explanation is that DescribeTrack() did this but I don't think function calls have access to the caller's memory to reset it. The type of track was supposed to be a Draw object in this case, BTW. A straight line in fact. I had one already in describe and I selected another one with the Describe window open. It was about the second time I did this that the error...
This is the GA release level. Downloaded. Running under LLDB when the error happens its a bad memory access at GetTrkType+16 called from CmdDescribe + 911 called from DoCurCommand +787. Based on the instruction dump it seems to be about to compare something to T_NOTRACK but the address used is 0xc off %rax which has 0x00000000 in it. So that would seem to be an uninitialized pointer to the track. I would note that I am using a lot of modules and some of them are frozen, so it may be possible I tried...
Actually can happen after closing describe and then selecting another line.
Crash in Describe
Options -> change the text field value handling to be updated immediately in all cases (benefit immediate visual updates) or ensure C_CANCEL is called on Reset in this case. I can see an issue with the field handling in that the intermediate values of the text field that can change on every character change have to be ignored so they don't pollute the Undo log. I suspect that we will need to have a side pointer to the original value and record that for undo at the end of the command if it has changed...
CallPushDescribe at cselect.c:3270 is called that calls in turn - cmdDescribe() for C_Start, C_Down and C_Up to start the Describe at the appropriate cursor place It seems in the code that it is C_Down where all the action happens. The updated field is supposed to be called back on each change. But in the case of the text box it is always ignored whereas things like the pos fields will cause immediate updates. DescribeDone has to be called and that only happens if C_CANCEL is called on cmdDescribe....
The issue may result from the removal of the "Done" button in the Describe dialog at cmisc.c:472. There is a special piece of code for the SEG_TEXT draw type at about cdraw.c:627 that looks for an inx == -1 and runs the update to assume that the TX field has been updated. This was presumably added because otherwise the text input would be ignored. I am not yet certain why the updatedraw() is not being run upon Close - or it is is, why the inx value is not being set to either TX or -1 when the Properties...
Ah - you said windows - but the same applies, the handling of non-ASCII is part of the OS.
Fix Layer dialog to ignore current layer in links
The tool icons do not flow as the window resizes
OK - it seems the gtk3 +xquartz install fixed the issue I was seeing - perhaps the former +x11 build was not communicating screen sizes properly. As a bonus that change also seems to have fixed the flightly zoom issue I mentioned. Now we have a better base, the max window size used by "maximize" is definitely not correctly set if the "main screen" is set to be the larger of two screens and the xtrkcad window is placed on the smaller screen (works ok for the large screen) but is done right if the...
The tool icons do not flow as the window resizes
Fix Mac g_critical message for ProgramDir
Fix uninitalized variables in cjoin and drawgeom
your summary of the situation us incorrect. OSX is complaining that it cant VERIFY that the download is free of malware. That is not the same as saying it HAS malware. xtrkcad, like much of opensource software, is "side loaded" - i.e., does not come from the App Store. There is a process that Apple uses to verify that things in the App Store are "clean". The reason we sideload is that the way they set up the App Store means that open source produced by volunteers can't qualify because we don't have...
MacInstall
MacInstall
MacInstall
MacInstall
your summary of the situation us incorrect. OSX is complaining that it cant VERIFY that the download is free of malware. That is not the same as saying it HAS malware. xtrkcad, like much of opensource software, is "side loaded" - i.e., does not come from the App Store. There is a process that Apple uses to verify that things in the App Store are "clean". The reason we sideload is that the way they set up thr App Store means that open source produced by volunteers cant qualify because we dont have...
your summary of the situation us incorrect. OSX is complaining thaf it cant ** VERIFY that the download is free of malware. That is not the same as saying it HAS** malware. xtrkcad, like much of opensource software, is "side loaded" - i.e., does not come from the App Store. There is a process that Apple uses to verify that things in the App Store are "clean". The reason we sideload is that the way they set up thr App Store means that open source produced by volunteers cant qualify because we dont...
Cannot Verify Malware is not present in download
Here is how it works on OSX Sequoia 15.7.2 - (Ensure you installed XQuartz before you run xtrkcad) Download xtrkcad from SourceForge. Open the .dmg file. Drag the xtrkcad icon to the Applications folder When you click to open the app in the Application folder a window appears that says "xtrkcad Not Opened. Apple could not verify that xtrkcad is free of malware that may harm your Mac or compromise your privacy" Click "Done" (NOT "Move to Trash") Now go to OSX Settings->Privacy & Security and scroll...
your sumnary of the situation us incorrect. OSX is complaining thaf it cant VERIFY that the downliad is free of malware. That is not the same as saying it HAS makeare. xtrkcad like much of opensource software is "side loaded" - i.e., does not come from the App Store. There is a process that Apple uses to verify that things in the App Store are "clean". The reason we sideload is that the way they set up thr App Store means that open source produced by volumteers cant qualify because we dont have a...
I'm not finding this error at 5.2.2GA. So, I am assuming something was removed. I don't actually understand the Z (Text) element I'm seeing at that level that, though -> it always seems to have a 100.0 angle.
I think the items you mention are because of differing config set ups. You only need to do packaging for distribution to others - the program should run from the binary in the install directory you built without need for doing that (and then installing, etc). The packager needs to point at the root install directory - so that it can find the binaries under that. I'm assuming you are building for a 32-bit version or for a non-release version?
MacBuild
First up, a major source of confusion is that XtrkCAD does not support visual "drag n drop" like a Office tool or most programs these days. It supports "Select n Move n Click". To "Add" an element you select it (click and release on the toolbar) then you move the mouse (no buttons held down) to the layout then you press the left-click button again (and can drag it around while the button is held down until released). For removing cars, you find them on the layout right-click (to bring up the menu)...
PolyLine
FileFormats
In big commercial products this debug issue is fixed by having scanners for dumps/system files that can scan for known exposures (the username is classic) and substitute a value (often "*" or "<username>" in the file for them. </username> In this case, the issue is file names which have a certain structure that could be matched and the userid found and replaced with <username> for example in a packager that the user uses before sending.</username> It is not possible to be perfect and a user could...
Scroll "Wheel" function is far too sensitive on Apple "Magic Mouse"
Scroll "Wheel" function is far too sensitive on Apple "Magic Mouse"
I have - Changed the logic from "wait for the a timer pop" before doing any zoom to do a first zoom now and then block all zooms until after it pops with a delay of 0.5 seconds. If in that time I get mutliple pops I change the timer to 0.25, otherwise it sets to 0.5. This has the effect of only allowing a maximum of 4 zooms a second and starts from scratch at 2 zooms a second regardless of input from the wheel/trackpad and also removes a hesitation at the start that encourages overzooming. Removed...
I am not totally convinced this used to work in Train Mode rather than Select Mode, but in any case, I pushed a fix to set the InfoStatus message when a Car is clicked in Train Mode.
Command + requires shift key, Command - does not on Mac
Bug was fixed by adding the numeric key "+" to the keys that trigger + zoom.
The current implementation equates one wheel increment event as equivalent to a "+" or a "-" key. What probably needs to happen is to add a timer that blocks further increments for a period of time (or suppresses a % of clicks within a short period of time after each "click") and allow the screen to redraw - this would also help the trackpad which also is quite sensitive on zoom. The ideal would allow a truly rapid wheel/trackpad movement to still cause "clicks" but damp down slower movement. Significant...
The connection distance and connection angle tolerances are universal (and user alterable in Options->Preferences). Two tests might illustrate this - change the connection distance to 0.2 and see what happens (likewise with 1.5 as an angle). We have not thought about how these values relate to scale (they are absolute defaults of 0.1" and 1 degree) however. So when a set of parallel tracks are created, any minor discrepancies in track positioning may add up at larger scales because the track offset...
4 will not happen, CAD programs are about precision, and having the scales different on the axes would not be appropriate to that mission. You are free to scale a pdf or png as you wish, but every single thing in xtrkcad relies on the x and y axis being similarly scaled.
Try clicking on the speed control (no drag) for precise alteration.
The useful points are not always the ends - for concave curves the impinging point is the interior center of the car (strictly the center between the two bogie centers if the centers are offset from the car center). I tried to do this code in V5.2 but it is extremely complex as you move between track elements especially those with complex and changing curvature. In the end I had to drop it. Probably someone else smarter than me might be able to get it to go.
4 - Use the Add->PredefinedTrack menu - you can select the track via arrow keys. Alternatively, you can right click on the hotbar and select an element using arrow keys.
There are already snaps available by holding down control drawing at 90 degree increments in line drawing - but they are fixed to the layout coordinate system. One way to achieve this precision for non-joined elements (such as table edges) would be to draw a polyline along the first/existing edge and use ctrl for the second polyline element (which snaps to 90 degrees to the first element). Then redraw the table edge elements over the polyline (using the inherent line end snaps that affect normal...
Need to carefully consider the effect on locked layers since copy can be from any layer. Should the paste fail if any of the source layers are locked? or only the locked parts? etc.
Allow Command key instead of Control key on Macs
The keyboard support on Mac/UNIX versions is especially complex as it relies on the mapping coming from X11/XQuartz and before that the OS (either Unix or Mac). What is thought of as standard for Macs is not standard for Linux - which is what X11 is emulating. X11 maps the OS provided keys to a set of independent UNIX keys with names like "Alt", "Meta" and "Super" which means that the program does not have any direct knowledge of what the keys actually pressed are or what keys the keyboard has. Added...
Just clicking on the speed control fader may help. Place the cursor a few pixels up or down and click (no drag needed). The minimum increment is 1 mph.
David, You are now an admin for the site - I think phpwiki https://sourceforge.net/projects/phpwiki/ might be interesting as it is a fork of wikkawiki but actually supported so it has later php support. Adam On Wed, Aug 23, 2023 at 12:03 PM David Fellows davef475@users.sourceforge.net wrote: I just started looking into this. Two items of info: Sourceforge went to php-7.4 in August 2023 from 5.4. Wikkawiki has several new versions since the one we were using. The last release being April 2020. Support...
Wikka site complaining about mySQL
Change "Cannot split Turnout track" message to explain Split
Car Inventory Add and Edit Dialog - Prototype Field
"Return" and "Enter" keys behave differently on a Mac
They are actually two different keys - and many Mac keyboards without a keypad have a Fn+Return as enter. Anyway relatively easy fix.
Minor issues with Cornu Joins
Minor issues with Cornu Joins
XTrackCAD keeps crashing on OSX Ventura
Not showing this behaviour with 5.3.1 Beta. Using the latest XQuartz as well. Windows come and go as usual.
Car selection issues in Train Mode
Can't help very much as my Mac has blown a fuse and is being repaired. But notes - Those turnouts were built that way to get the latest information that included a radius at the end of the diverging legs to match the information provided by Peco. The intention is that extending them would add a curve rather than a straight. So the very last segment of the turnout is supposed to be a short fixed radius curve which can be read without knowledge of the internals (or the need to extend the turnout model)....
This could well be the curve center marking option in Options->Display.... I suspect that it is appears for turnouts as well as flexible track because fixed radius RTR track is also a turnout. If so, not sure about why it appears in Map - that may be a bug - but it would only be displayed at certain zoom levels so as not to clutter too much as the map zooms out. The reason for that option is to allow layout of the real tracks by placing the center and using string - but as that center is often in...
Note - only selected tracks selected are included in the list unless there are no tracks selected.
Improve Train Mode
Working on it - created a thread in the development groups.io forum. Note - Both files are damaged, the second is worse but the first has the start of it. The Damage comes inside the Turnout Description jield ust after the a umlaut in Märklin. Not every Turnout from Märklin is affected. All turnouts are not being written in good UTF-8 as they should be. The umlauts are in DBCS format even in the cases that sorta work. I repaired your original file as best I could. As I did not know the types of the...
That's the "big dot" size - have made 2 pix instead of 3 to reduce.
Snap Grid Difference between Releases
Xtrkcad64 5.2.2beta1 shutsdown accessing help search
Its slightly more complex because the same track gauge can be re-used for different purposes. And someone's branch layer may be different than someone's main-line layer even in the same gauge for min radius and max grade. I actually favor a system of overrides where if a setting is made for a layer it overrides the setting made for the layout for the same gauge (the default). Within the layer, the settings should be by gauge. This all needs to be tidied up in a new UI for layers - which allows for...
Option -> Draw Color Setting error
So the color toggle in the Manage->Layer for the layer in question also has to be set to "use color" for a color by layer to take effect for that layer. The reason is that some folks wanted to use the layer color just for particular layers, but they didn't for others. The pattern is that the Options->Display settings are master switches that allow any of the layers switches to work. If they are off none of the layer switches have an effect, but if they are on each layer must have the switch set for...
Trim line feature does not work for table edge
Yup - I probably omitted them without thinking. BTW - Just in case this helps - you can achieve a trimmable table edge with a normal line with width set to -3. (Minus means a fixed pixel size to draw which is the only real difference between line edges and lines today). That way you can have table edges with Beziers, PolyLines, etc... You could even join them up into Polygons with curved nodes.
Draw Box not behaving as expected (Move also an issue with existing Boxes)
It happens!! Good luck, hope we fixed whatever it was.
I see you are at V5.1.2a from the file - does this recur with 5.2 ? And if so, what level of code - shown in the top rail of the program. There has been a lot of water under the bridge since V5.1.2a. And no, there are no limits. There are sometimes bugs... Adam
Allow different scale stock to be added to same gauge track in ops mode
As this already exists - both in the lack of use of Scale or Guage to stop attachment to different tracks and in being able to see compatible or non-compatible stock and change the layout gauge/scale to add them, I am closing this ticket.
Add 1:29 scale (Aristocraft) to layout options
This is sort of what the load settings field is for.but not quite. You save the settings you want to override to the partial settings file and when the layer is invoked those settings will override the ones in use. However, the values are applies one at a time, as they are global and so when showing the layout the grade and radius (in this case) will be judged against the currently active standards when being drawn. Trying to assess these values against the layer the track is in would be a seperate...
Replace selected track piece(s)
Segmentation Fault, GetAngleSegs
Fix pushed at V5.2.2 branch.
Also potentially useful - what Scale/Gauge is set in Options->Layout? - is the HotBar (pictures of track and structures) showing?
Details please When you say "Add" do you mean File->Parameter Files...->Library->Add. or File->Parameter Files...->Browse... ->Open,? What file(s) were you trying to "Add" (filenames ideally, enabled by the "show filenames" checkbox). Thanks
Updated/New Lego Parameter files
Added
More Ruler options on Print
Deleting items doesn't remove from inventory
High Resolution PNG Export (Feature Request)
Add 1:29 scale (Aristocraft) to layout options