You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
(5) |
May
(195) |
Jun
(105) |
Jul
(146) |
Aug
(283) |
Sep
(151) |
Oct
(143) |
Nov
(204) |
Dec
(359) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(213) |
Feb
(366) |
Mar
(423) |
Apr
(226) |
May
(195) |
Jun
(270) |
Jul
(282) |
Aug
(255) |
Sep
(218) |
Oct
(328) |
Nov
(261) |
Dec
(358) |
| 2002 |
Jan
(366) |
Feb
(321) |
Mar
(360) |
Apr
(219) |
May
(284) |
Jun
(227) |
Jul
(592) |
Aug
(432) |
Sep
(530) |
Oct
(307) |
Nov
(320) |
Dec
(177) |
| 2003 |
Jan
(253) |
Feb
(164) |
Mar
(216) |
Apr
(295) |
May
(260) |
Jun
(297) |
Jul
(438) |
Aug
(339) |
Sep
(169) |
Oct
(174) |
Nov
(225) |
Dec
(221) |
| 2004 |
Jan
(517) |
Feb
(613) |
Mar
(320) |
Apr
(193) |
May
(165) |
Jun
(358) |
Jul
(502) |
Aug
(386) |
Sep
(474) |
Oct
(298) |
Nov
(305) |
Dec
(403) |
| 2005 |
Jan
(274) |
Feb
(409) |
Mar
(282) |
Apr
(430) |
May
(329) |
Jun
(309) |
Jul
(380) |
Aug
(363) |
Sep
(440) |
Oct
(271) |
Nov
(270) |
Dec
(173) |
| 2006 |
Jan
(185) |
Feb
(187) |
Mar
(213) |
Apr
(253) |
May
(204) |
Jun
(230) |
Jul
(155) |
Aug
(211) |
Sep
(159) |
Oct
(127) |
Nov
(162) |
Dec
(84) |
| 2007 |
Jan
(98) |
Feb
(105) |
Mar
(137) |
Apr
(88) |
May
(142) |
Jun
(174) |
Jul
(159) |
Aug
(107) |
Sep
(41) |
Oct
(84) |
Nov
(77) |
Dec
(43) |
| 2008 |
Jan
(106) |
Feb
(80) |
Mar
(78) |
Apr
(182) |
May
(79) |
Jun
(105) |
Jul
(51) |
Aug
(69) |
Sep
(79) |
Oct
(47) |
Nov
(42) |
Dec
(32) |
| 2009 |
Jan
(64) |
Feb
(41) |
Mar
(42) |
Apr
(40) |
May
(47) |
Jun
(86) |
Jul
(32) |
Aug
(57) |
Sep
(52) |
Oct
(38) |
Nov
(89) |
Dec
(32) |
| 2010 |
Jan
(30) |
Feb
(34) |
Mar
(23) |
Apr
(24) |
May
(17) |
Jun
(20) |
Jul
(49) |
Aug
(30) |
Sep
(77) |
Oct
(41) |
Nov
(66) |
Dec
(31) |
| 2011 |
Jan
(36) |
Feb
(34) |
Mar
(10) |
Apr
(55) |
May
(21) |
Jun
(21) |
Jul
(29) |
Aug
(55) |
Sep
(33) |
Oct
(8) |
Nov
(17) |
Dec
(17) |
| 2012 |
Jan
(7) |
Feb
(15) |
Mar
(23) |
Apr
(14) |
May
(20) |
Jun
(36) |
Jul
(35) |
Aug
(35) |
Sep
(9) |
Oct
(6) |
Nov
(29) |
Dec
(30) |
| 2013 |
Jan
(36) |
Feb
(19) |
Mar
(5) |
Apr
(15) |
May
(21) |
Jun
(12) |
Jul
(7) |
Aug
(18) |
Sep
(30) |
Oct
(5) |
Nov
(7) |
Dec
(9) |
| 2014 |
Jan
(11) |
Feb
(15) |
Mar
|
Apr
(1) |
May
(10) |
Jun
(16) |
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
(17) |
Dec
(21) |
| 2015 |
Jan
(15) |
Feb
(8) |
Mar
(1) |
Apr
(7) |
May
(3) |
Jun
(22) |
Jul
(10) |
Aug
(37) |
Sep
(8) |
Oct
(2) |
Nov
(18) |
Dec
(8) |
| 2016 |
Jan
(3) |
Feb
(1) |
Mar
(7) |
Apr
(14) |
May
(4) |
Jun
(13) |
Jul
(19) |
Aug
(21) |
Sep
(6) |
Oct
(1) |
Nov
(3) |
Dec
(9) |
| 2017 |
Jan
(17) |
Feb
(9) |
Mar
(30) |
Apr
(17) |
May
(7) |
Jun
(55) |
Jul
(1) |
Aug
(4) |
Sep
(1) |
Oct
|
Nov
(2) |
Dec
(4) |
| 2018 |
Jan
(21) |
Feb
(5) |
Mar
(9) |
Apr
(6) |
May
(4) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(2) |
Dec
(3) |
| 2019 |
Jan
(2) |
Feb
(6) |
Mar
(9) |
Apr
|
May
(9) |
Jun
(3) |
Jul
(7) |
Aug
(2) |
Sep
(22) |
Oct
|
Nov
(10) |
Dec
(11) |
| 2020 |
Jan
(10) |
Feb
(6) |
Mar
(31) |
Apr
(27) |
May
(6) |
Jun
(4) |
Jul
(34) |
Aug
(3) |
Sep
|
Oct
(4) |
Nov
(51) |
Dec
(27) |
| 2021 |
Jan
(5) |
Feb
(3) |
Mar
(9) |
Apr
(18) |
May
(2) |
Jun
|
Jul
(12) |
Aug
(32) |
Sep
(16) |
Oct
(16) |
Nov
(1) |
Dec
(4) |
| 2022 |
Jan
(2) |
Feb
(12) |
Mar
(10) |
Apr
(17) |
May
|
Jun
(3) |
Jul
(4) |
Aug
|
Sep
(7) |
Oct
(23) |
Nov
(26) |
Dec
(1) |
| 2023 |
Jan
(7) |
Feb
(9) |
Mar
(4) |
Apr
(18) |
May
(17) |
Jun
(26) |
Jul
(24) |
Aug
(2) |
Sep
(10) |
Oct
(3) |
Nov
(11) |
Dec
(4) |
| 2024 |
Jan
(2) |
Feb
(13) |
Mar
(2) |
Apr
(14) |
May
(22) |
Jun
|
Jul
(16) |
Aug
(3) |
Sep
(3) |
Oct
(38) |
Nov
(3) |
Dec
(13) |
| 2025 |
Jan
(10) |
Feb
|
Mar
(2) |
Apr
|
May
(5) |
Jun
|
Jul
(17) |
Aug
(2) |
Sep
(8) |
Oct
(12) |
Nov
(4) |
Dec
(26) |
| 2026 |
Jan
(6) |
Feb
|
Mar
|
Apr
(2) |
May
(9) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Pof <jd3...@gm...> - 2024-05-01 17:13:40
|
Dear all, I would like to prevent (i.e. not allow) copying the data displayed in a FXTable. I could not find any method to invoke in order to do that. Any idea? Regards Pof |
|
From: Jeroen v. d. Z. <je...@fo...> - 2024-04-22 03:20:18
|
On Sun, 21 Apr 2024 14:34:42 +0200 Marcus Ertl <ert...@gm...> wrote: > Dear Mr. van der Zijp, > > since the project page has not been updated in a while, I am not sure > you're still active or even if this email address is still valid (it > conflicts between .net and .com between pages, neither of which is the > current fox-location (.org)... ). I've been busy. But I've just dropped a new snapshot... > In any case, I have extended the 1.6 branch with a simple animation > class. In case it is of interest to you, please see the attached files. > They likely are not good enough for inclusion into FOX, and at least > will need some stylistic changes, but in any case I give you permission > to include them in FOX, or use as base, or for inspiration, etc., if you > find them useful. Yes, it could be useful for some projects. But probably is better for me to get it to work for the latest FOX version instead. -- JVZ |
|
From: Enno R. <enn...@gm...> - 2024-04-21 21:06:10
|
That's form the documentation for version 1.7, while I'm still working with 1.6 (which doesn't seem to have those functions). However, the 1.6 docs state that: > Text input may be constrained to a certain format; the built-in capabilities support integer and real number entry constraints; additional constraints on the input may be implemented by intercepting the SEL_VERIFY message; Which sounds promising at first, but I have to see what exactly that means in practice. Enno. On 4/21/2024 2:51 PM, Roland Hughes via Foxgui-users wrote: > The Web documentation is very very sparse and I don't use FOX right now > but I would look into these > > > FXbool pasteSelection > <http://www.fox-toolkit.org/ref/classFX_1_1FXTextField.html#a15cb534a3e4dd86e02f923f93f7b5777>(FXbool notify=false) > Paste primary selection. > FXbool pasteClipboard > <http://www.fox-toolkit.org/ref/classFX_1_1FXTextField.html#a20781ca175da2ef7a10c03a0cd167419>(FXbool notify=false) > Paste clipboard. > > long *onClipboardLost*(FXObject > <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, > void *) > long *onClipboardGained*(FXObject > <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, > void *) > long *onClipboardRequest*(FXObject > <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, > void *) > > > Detailed Description > > A text field is a single-line text entry widget. > > The text field widget supports clipboard for cut-and-paste operations. > Text input may be constrained to a certain format; the built-in > capabilities support integer and real number entry constraints; > additional constraints on the input may be implemented by intercepting > the SEL_VERIFY message; a custom handler should examine the tentative > input string passed as type const FXchar* in the message data, and > return a value of "0" if the new input is accepted. During text entry, > the text field sends a SEL_CHANGED message to its target, with the > message data set to the current text value of type const FXchar*. When > the text is accepted by hitting ENTER, the SEL_COMMAND message is sent. > The text field also sends SEL_COMMAND when the focus moves to another > control. TEXTFIELD_ENTER_ONLY can be passed to suppress this feature. > Typically, this flag is used in dialogs that close when ENTER is hit in > a text field. > > > ---- > > Basically, speaking in a Qt/CopperSpice/signal-slot manner: > > You are looking for what would be an aboutToPaste() signal from the > field. Something emitted/called when the field is about to accept a > paste. You then feed the text through "filter" code of your own > substituting N-spaces for \t characters. > > Ah, here: http://fox-toolkit.org/clipboard.html > > Detailed documentation on the clipboard as it exists in Fox. You should > be able to find where to wedge your filter in there. > > You probably also want to beg for a "feature" of > preClipboardPasteFilter() or a similar name, which makes a local copy of > the clipboard content, applies one or more filters, then passes the > bytes through to the paste operation itself. > > On 4/21/2024 6:40 AM, Enno Rehling wrote: >> I accidentally only replied to Jeroen earlier, so here's my question >> again, to the whole list: >> >> In this case, the way the tabs got into this field was via copy & >> paste. Is there a good way to catch that and remove the tabs? >> >> Enno. >> >> On 4/7/2024 4:51 PM, Jeroen van der Zijp wrote: >>> On Sat, 6 Apr 2024 19:33:42 +0200 >>> Enno Rehling <enn...@gm...> wrote: >>> >>>> I have a FXTextField in my application, and when I insert text into >>>> it that >>>> starts one or more leading tab characters, the rendering of the text >>>> goes >>>> haywire: >>>> [image: fox_text.png] >>>> The text that it's trying to display is "<tab><tab>Lorem ipsum dolor >>>> sit >>>> amet, consectetur adipiscing elit" - notice the white space at the end >>>> followed by another t, and the weird artifacts in "adipiscing" that >>>> make >>>> the word unreadable. >>>> This artifacting gets word when I move the text cursor backwards >>>> through >>>> the text: >>> >>> Interesting. The reason I don't think I've seen this is because >>> there's no way to enter a tab into FXTextField. Or any control >>> character, >>> for that matter. So text drawing in FXTextField has no "substitute" >>> characters >>> to render the way FXText does. >>> >>> Maybe this is something that should be fixed, or at very least, >>> protected against. >>> >>> >>> -- JVZ >>> >>> >> >> >> _______________________________________________ >> Foxgui-users mailing list >> Fox...@li... >> https://lists.sourceforge.net/lists/listinfo/foxgui-users > > -- > Roland Hughes, President > Logikal Solutions > (630)-205-1593 > > http://www.theminimumyouneedtoknow.com > http://www.infiniteexposure.net > http://www.johnsmith-book.com > http://www.logikalblog.com > http://www.interestingauthors.com/blog > > > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Virus-free.www.avast.com <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> > > <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> > > > _______________________________________________ > Foxgui-users mailing list > Fox...@li... > https://lists.sourceforge.net/lists/listinfo/foxgui-users |
|
From: Roland H. <ro...@lo...> - 2024-04-21 12:51:35
|
The Web documentation is very very sparse and I don't use FOX right now but I would look into these FXbool pasteSelection <http://www.fox-toolkit.org/ref/classFX_1_1FXTextField.html#a15cb534a3e4dd86e02f923f93f7b5777>(FXbool notify=false) Paste primary selection. FXbool pasteClipboard <http://www.fox-toolkit.org/ref/classFX_1_1FXTextField.html#a20781ca175da2ef7a10c03a0cd167419>(FXbool notify=false) Paste clipboard. long *onClipboardLost*(FXObject <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, void *) long *onClipboardGained*(FXObject <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, void *) long *onClipboardRequest*(FXObject <http://www.fox-toolkit.org/ref/classFX_1_1FXObject.html>*, FXSelector, void *) Detailed Description A text field is a single-line text entry widget. The text field widget supports clipboard for cut-and-paste operations. Text input may be constrained to a certain format; the built-in capabilities support integer and real number entry constraints; additional constraints on the input may be implemented by intercepting the SEL_VERIFY message; a custom handler should examine the tentative input string passed as type const FXchar* in the message data, and return a value of "0" if the new input is accepted. During text entry, the text field sends a SEL_CHANGED message to its target, with the message data set to the current text value of type const FXchar*. When the text is accepted by hitting ENTER, the SEL_COMMAND message is sent. The text field also sends SEL_COMMAND when the focus moves to another control. TEXTFIELD_ENTER_ONLY can be passed to suppress this feature. Typically, this flag is used in dialogs that close when ENTER is hit in a text field. ---- Basically, speaking in a Qt/CopperSpice/signal-slot manner: You are looking for what would be an aboutToPaste() signal from the field. Something emitted/called when the field is about to accept a paste. You then feed the text through "filter" code of your own substituting N-spaces for \t characters. Ah, here: http://fox-toolkit.org/clipboard.html Detailed documentation on the clipboard as it exists in Fox. You should be able to find where to wedge your filter in there. You probably also want to beg for a "feature" of preClipboardPasteFilter() or a similar name, which makes a local copy of the clipboard content, applies one or more filters, then passes the bytes through to the paste operation itself. On 4/21/2024 6:40 AM, Enno Rehling wrote: > I accidentally only replied to Jeroen earlier, so here's my question > again, to the whole list: > > In this case, the way the tabs got into this field was via copy & > paste. Is there a good way to catch that and remove the tabs? > > Enno. > > On 4/7/2024 4:51 PM, Jeroen van der Zijp wrote: >> On Sat, 6 Apr 2024 19:33:42 +0200 >> Enno Rehling <enn...@gm...> wrote: >> >>> I have a FXTextField in my application, and when I insert text into >>> it that >>> starts one or more leading tab characters, the rendering of the text >>> goes >>> haywire: >>> [image: fox_text.png] >>> The text that it's trying to display is "<tab><tab>Lorem ipsum dolor >>> sit >>> amet, consectetur adipiscing elit" - notice the white space at the end >>> followed by another t, and the weird artifacts in "adipiscing" that >>> make >>> the word unreadable. >>> This artifacting gets word when I move the text cursor backwards >>> through >>> the text: >> >> Interesting. The reason I don't think I've seen this is because >> there's no way to enter a tab into FXTextField. Or any control >> character, >> for that matter. So text drawing in FXTextField has no "substitute" >> characters >> to render the way FXText does. >> >> Maybe this is something that should be fixed, or at very least, >> protected against. >> >> >> -- JVZ >> >> > > > _______________________________________________ > Foxgui-users mailing list > Fox...@li... > https://lists.sourceforge.net/lists/listinfo/foxgui-users -- Roland Hughes, President Logikal Solutions (630)-205-1593 http://www.theminimumyouneedtoknow.com http://www.infiniteexposure.net http://www.johnsmith-book.com http://www.logikalblog.com http://www.interestingauthors.com/blog -- This email has been checked for viruses by Avast antivirus software. www.avast.com |
|
From: Enno R. <enn...@gm...> - 2024-04-21 11:41:07
|
I accidentally only replied to Jeroen earlier, so here's my question again, to the whole list: In this case, the way the tabs got into this field was via copy & paste. Is there a good way to catch that and remove the tabs? Enno. On 4/7/2024 4:51 PM, Jeroen van der Zijp wrote: > On Sat, 6 Apr 2024 19:33:42 +0200 > Enno Rehling <enn...@gm...> wrote: > >> I have a FXTextField in my application, and when I insert text into it that >> starts one or more leading tab characters, the rendering of the text goes >> haywire: >> [image: fox_text.png] >> The text that it's trying to display is "<tab><tab>Lorem ipsum dolor sit >> amet, consectetur adipiscing elit" - notice the white space at the end >> followed by another t, and the weird artifacts in "adipiscing" that make >> the word unreadable. >> This artifacting gets word when I move the text cursor backwards through >> the text: > > Interesting. The reason I don't think I've seen this is because > there's no way to enter a tab into FXTextField. Or any control character, > for that matter. So text drawing in FXTextField has no "substitute" characters > to render the way FXText does. > > Maybe this is something that should be fixed, or at very least, protected against. > > > -- JVZ > > |
|
From: <je...@fo...> - 2024-04-17 12:53:31
|
> Valgrind is a good tool, but you need an extreme amount of "spare" > horsepower to run it. That's one of the reasons I keep a trusty old HP > z820 around. 24 physical core and 120 physical GB of RAM. If I get in > a Valgrind situation, that's the machine I use. I also use it for > Yocto builds for the same reason. You can find them online pretty > reasonable now because the CAD workstation people have moved on to > dramatically more expensive machines. > > Just my 0.0002 cents. Those Sandy Bridge Xeons have had a very long life; mostly, due to Intels very minimal year over year improvements [until recently!], if you had one of these then you wouldn't miss anything really important: 1) AVX, AES, etc. enabled. 2) Lots of cores. 3) Quad memory channels. And Intel sold a ton of them, and even today, they still hold their ground although the case is tougher now, with AMD chips quite literally giving you a quarter kilo-cores to play with on their server chips [can't wait for *those* to get to Ebay ;-)]. But the price is right. Ebay workstations with xeons from that era go for a song, if anyone is looking for a box with lots of ram that isn't breaking the bank <$250 or so then look for those SB or IB Xeons! Only downside is the single thread performance isn't great compared to recent chips, which are now hitting 5GHz in turbo. -- JVZ |
|
From: Roland H. <ro...@lo...> - 2024-04-17 11:51:11
|
Valgrind can be pretty awesome. Valgrind generally adds 45 minutes to program startup unless your computer has at least 2 more core and 12 GB of RAM than it was previously using. When there is no other option it can be a useful tool. Not FX related, but funny (now that it is over) story. When I was helping create the first one of these for Welch Allyn https://www.hillrom.com/en/products/connex-spot-monitor/ We had a coding/logic program where it was taking 10 minutes to load. Vikram decided we should use Valgrind. He spent a couple of hours getting the application built for Valgrind on target then started it on Friday afternoon. When he came in a little after 9am on Monday it __still__ hadn't finished the startup process. Valgrind is a good tool, but you need an extreme amount of "spare" horsepower to run it. That's one of the reasons I keep a trusty old HP z820 around. 24 physical core and 120 physical GB of RAM. If I get in a Valgrind situation, that's the machine I use. I also use it for Yocto builds for the same reason. You can find them online pretty reasonable now because the CAD workstation people have moved on to dramatically more expensive machines. Just my 0.0002 cents. On 4/16/2024 10:10 PM, Jeroen van der Zijp wrote: > On Tue, 16 Apr 2024 17:59:12 -0500 > Roland Hughes via Foxgui-users <fox...@li...> wrote: > >> I haven't used Fox in a long time, but I'm older than dirt. Please allow >> me to share a story that may or may not have anything to do with your >> problem. >> >> Back in the days of DOS we had real compilers and real programmers, then >> we had Borland and those who used it. Borland "developers" spread like a >> pandemic throughout the industry. Since most of us were getting source >> code via BBS and long distance calls via modem, if you unzipped some >> source and the comments said it was developed using Borland, you just >> deleted everything. It was going to be faster to write it yourself than >> fix their "working, fully tested" code. >> >> Borland, by default, automatically initialized everything. Real >> compilers did not. Some didn't even initialize stuff when compiling in >> debug mode. Borland users were just hacks and their stuff would crash >> all over the place when compiled with a real compiler. You could not >> port it to another platform to save your ass. >> >> I took you on that picturesque journey down memory lane because what you >> describe is ___exactly___ the kind of Mystery Crash we would get back >> then. No, you aren't using Borland . . . but >> >> 1) Check your compilation switches, ALL of them, even the ones (if any) >> Fox turns on without telling you. >> >> 2) On the Linux platform, turn off any compiler switch that initializes >> anything for you so you can make it crash on Linux. >> >> Once it crashes, if you are using Ubuntu or Linux Mint (or a Linux based >> on either) read this post: >> >> https://www.logikalsolutions.com/wordpress/information-technology/core-dumps/ >> >> That will tell you how to enable core dumps. Then this post: >> >> https://www.logikalsolutions.com/wordpress/information-technology/core-dumps-2/ >> >> Which will tell you how to use GDB within Emacs to debug a core dump. >> >> I'm 99.999% certain you have one of two problems. >> >> *Most likely:* as was eluded to in previous message, you somehow have a >> logic path that is attempting to utilize an uninitialized string. If you >> really are dying on length() you are dying on garbage that equates to a >> really big binary number for the length because it has "whatever" was >> left over in RAM. >> >> *Second most likely:* You are using a pointer to "something else" that >> happens to point to where your string got allocated. You copied a big >> block of something there and now your string has garbage for the size >> and the length is larger than your physical memory. >> >> *Third most likely:* You returned a string ___ that was locally >> allocated on the stack as a local variable___ via reference or address. >> Mac re-used that chunk of stack but the other two platforms hadn't >> gotten around to it yet. >> >> PC-LINT used to be an awesome product for finding most of these >> problems. I assume it still is, but now it isn't a $350 tool you keep in >> the toolbox because they charge your first born child and 3 critical >> bodily organs for it. >> >> CppCheck "might" help you but the "free" version is really neutered. A >> static analysis tool really could help you find some of these. Use the >> Wikipedia page at your own risk. >> >> https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis > As a suggestion, perhaps valgrind (if it works on that system) can illuminate > the issue. At least on x86 its often great to spot memory overwrite issues [ > which is what this looks like]. > > Finally, try if compiling with different options (debug vs. release), etc. > makes a difference. > > Run the code in the debugger, and set breakpoint prior to the offending > statement [if you can at least determine where that is]. > > -- JVZ > > > > _______________________________________________ > Foxgui-users mailing list > Fox...@li... > https://lists.sourceforge.net/lists/listinfo/foxgui-users -- Roland Hughes, President Logikal Solutions (630)-205-1593 http://www.theminimumyouneedtoknow.com http://www.infiniteexposure.net http://www.johnsmith-book.com http://www.logikalblog.com http://www.interestingauthors.com/blog -- This email has been checked for viruses by Avast antivirus software. www.avast.com |
|
From: Jeroen v. d. Z. <je...@fo...> - 2024-04-17 03:10:14
|
On Tue, 16 Apr 2024 17:59:12 -0500 Roland Hughes via Foxgui-users <fox...@li...> wrote: > I haven't used Fox in a long time, but I'm older than dirt. Please allow > me to share a story that may or may not have anything to do with your > problem. > > Back in the days of DOS we had real compilers and real programmers, then > we had Borland and those who used it. Borland "developers" spread like a > pandemic throughout the industry. Since most of us were getting source > code via BBS and long distance calls via modem, if you unzipped some > source and the comments said it was developed using Borland, you just > deleted everything. It was going to be faster to write it yourself than > fix their "working, fully tested" code. > > Borland, by default, automatically initialized everything. Real > compilers did not. Some didn't even initialize stuff when compiling in > debug mode. Borland users were just hacks and their stuff would crash > all over the place when compiled with a real compiler. You could not > port it to another platform to save your ass. > > I took you on that picturesque journey down memory lane because what you > describe is ___exactly___ the kind of Mystery Crash we would get back > then. No, you aren't using Borland . . . but > > 1) Check your compilation switches, ALL of them, even the ones (if any) > Fox turns on without telling you. > > 2) On the Linux platform, turn off any compiler switch that initializes > anything for you so you can make it crash on Linux. > > Once it crashes, if you are using Ubuntu or Linux Mint (or a Linux based > on either) read this post: > > https://www.logikalsolutions.com/wordpress/information-technology/core-dumps/ > > That will tell you how to enable core dumps. Then this post: > > https://www.logikalsolutions.com/wordpress/information-technology/core-dumps-2/ > > Which will tell you how to use GDB within Emacs to debug a core dump. > > I'm 99.999% certain you have one of two problems. > > *Most likely:* as was eluded to in previous message, you somehow have a > logic path that is attempting to utilize an uninitialized string. If you > really are dying on length() you are dying on garbage that equates to a > really big binary number for the length because it has "whatever" was > left over in RAM. > > *Second most likely:* You are using a pointer to "something else" that > happens to point to where your string got allocated. You copied a big > block of something there and now your string has garbage for the size > and the length is larger than your physical memory. > > *Third most likely:* You returned a string ___ that was locally > allocated on the stack as a local variable___ via reference or address. > Mac re-used that chunk of stack but the other two platforms hadn't > gotten around to it yet. > > PC-LINT used to be an awesome product for finding most of these > problems. I assume it still is, but now it isn't a $350 tool you keep in > the toolbox because they charge your first born child and 3 critical > bodily organs for it. > > CppCheck "might" help you but the "free" version is really neutered. A > static analysis tool really could help you find some of these. Use the > Wikipedia page at your own risk. > > https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis As a suggestion, perhaps valgrind (if it works on that system) can illuminate the issue. At least on x86 its often great to spot memory overwrite issues [ which is what this looks like]. Finally, try if compiling with different options (debug vs. release), etc. makes a difference. Run the code in the debugger, and set breakpoint prior to the offending statement [if you can at least determine where that is]. -- JVZ |
|
From: Roland H. <ro...@lo...> - 2024-04-16 23:27:32
|
I haven't used Fox in a long time, but I'm older than dirt. Please allow me to share a story that may or may not have anything to do with your problem. Back in the days of DOS we had real compilers and real programmers, then we had Borland and those who used it. Borland "developers" spread like a pandemic throughout the industry. Since most of us were getting source code via BBS and long distance calls via modem, if you unzipped some source and the comments said it was developed using Borland, you just deleted everything. It was going to be faster to write it yourself than fix their "working, fully tested" code. Borland, by default, automatically initialized everything. Real compilers did not. Some didn't even initialize stuff when compiling in debug mode. Borland users were just hacks and their stuff would crash all over the place when compiled with a real compiler. You could not port it to another platform to save your ass. I took you on that picturesque journey down memory lane because what you describe is ___exactly___ the kind of Mystery Crash we would get back then. No, you aren't using Borland . . . but 1) Check your compilation switches, ALL of them, even the ones (if any) Fox turns on without telling you. 2) On the Linux platform, turn off any compiler switch that initializes anything for you so you can make it crash on Linux. Once it crashes, if you are using Ubuntu or Linux Mint (or a Linux based on either) read this post: https://www.logikalsolutions.com/wordpress/information-technology/core-dumps/ That will tell you how to enable core dumps. Then this post: https://www.logikalsolutions.com/wordpress/information-technology/core-dumps-2/ Which will tell you how to use GDB within Emacs to debug a core dump. I'm 99.999% certain you have one of two problems. *Most likely:* as was eluded to in previous message, you somehow have a logic path that is attempting to utilize an uninitialized string. If you really are dying on length() you are dying on garbage that equates to a really big binary number for the length because it has "whatever" was left over in RAM. *Second most likely:* You are using a pointer to "something else" that happens to point to where your string got allocated. You copied a big block of something there and now your string has garbage for the size and the length is larger than your physical memory. *Third most likely:* You returned a string ___ that was locally allocated on the stack as a local variable___ via reference or address. Mac re-used that chunk of stack but the other two platforms hadn't gotten around to it yet. PC-LINT used to be an awesome product for finding most of these problems. I assume it still is, but now it isn't a $350 tool you keep in the toolbox because they charge your first born child and 3 critical bodily organs for it. CppCheck "might" help you but the "free" version is really neutered. A static analysis tool really could help you find some of these. Use the Wikipedia page at your own risk. https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis On 4/16/2024 5:04 PM, Jeroen van der Zijp wrote: > On Tue, 16 Apr 2024 17:20:41 -0400 > "John Selverian"<joh...@ja...> wrote: > >> My program is crashing on start-up on the Mac. It works fine on >> Windows and Linux. I can't catch it in the debugger, it crashes >> in FXString::length() in the fox lib. I have some long strings >> (up to 2000 chars). Could this be the problem? Is there a length >> limit for FXString? > Length limit is, basically, MAX_INT (2**31-1). Why does it > crash? I don't know. I assume you've at least executed the > FXString constructor? FXString is essentially a pointer to > a text buffer, preceded by the size of the string [there's > an extra byte at the end, not accounted for in the length]. > > An empty string is a special pointer, which is preceeded by > a count of 0, and whose contents is a single end-of-string > character ('\0'). > > > > > -- JVZ > > > _______________________________________________ > Foxgui-users mailing list > Fox...@li... > https://lists.sourceforge.net/lists/listinfo/foxgui-users -- Roland Hughes, President Logikal Solutions (630)-205-1593 http://www.theminimumyouneedtoknow.com http://www.infiniteexposure.net http://www.johnsmith-book.com http://www.logikalblog.com http://www.interestingauthors.com/blog -- This email has been checked for viruses by Avast antivirus software. www.avast.com |
|
From: John S. <joh...@ja...> - 2024-04-16 23:17:02
|
I fixed it. There must be a difference in the compilers on the
different platforms.
I had a "const FXString" defined in a different class, I included
the header in my other files and it worked on Windows and Linux
but crashed on the Mac. It compiled fine on the Mac...it just
won't run. The declaration was accepted to get it past the
compiler but it was not allocated int eh actual code at run-time.
I added a local definition for this constant and now it works on
the Mac.
Js
-----Original Message-----
From: John Selverian <joh...@ja...>
Sent: Tuesday, April 16, 2024 6:35 PM
To: 'Jeroen van der Zijp' <je...@fo...>
Cc: fox...@li...
Subject: Re: [Foxgui-users] string length on Mac
This is part of the dump I see:
System Integrity Protection: enabled
Notes:
PC register does not match crashing frame (0x0 vs 0x1237BC28F)
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0xfffffffffffffffc
Exception Codes: 0x0000000000000001, 0xfffffffffffffffc
Termination Reason: Namespace SIGNAL, Code 11 Segmentation
fault: 11
Terminating Process: exc handler [32740]
VM Region Info: 0xfffffffffffffffc is not in any region. Bytes
after previous region: 18446603349843460093
REGION TYPE START - END [ VSIZE]
PRT/MAX SHRMOD REGION DETAIL
unused __TEXT 7ffca5bc0000-7ffcd40cc000 [741.0M]
r-x/r-x SM=COW unused unknown system shared lib __TEXT
--->
UNUSED SPACE AT END
Error Formulating Crash Report:
PC register does not match crashing frame (0x0 vs 0x1237BC28F)
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libFOX-1.7.0.dylib 0x1237bc28f
FX::FXString::length() const + 15
1 libFOX-1.7.0.dylib 0x1239fb0af
FX::FXString::append(FX::FXString const&) + 47
2 libFOX-1.7.0.dylib 0x123a0177c
FX::operator+(FX::FXString const&, FX::FXString const&) + 60
3 MPDB 0x10821b267
__cxx_global_var_init.31 + 55
4 MPDB 0x10821b859
_GLOBAL__sub_I_ReferencesAlAlloys.cpp + 89
5 dyld 0x20e45639f
invocation function for block in
dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&)
const::$_0::operator()() const + 185
6 dyld 0x20e4904c8
invocation function for block in
dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&,
dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int)
block_pointer, void const*) const + 133
7 dyld 0x20e484bcf
invocation function for block in
dyld3::MachOFile::forEachSection(void
(dyld3::MachOFile::SectionInfo const&, bool, bool&)
block_pointer) const + 543
8 dyld 0x20e43b07f
dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void
(load_command const*, bool&) block_pointer) const + 249
9 dyld 0x20e483d0c
dyld3::MachOFile::forEachSection(void
(dyld3::MachOFile::SectionInfo const&, bool, bool&)
block_pointer) const + 176
10 dyld 0x20e4861b0
dyld3::MachOFile::forEachInitializerPointerSection(Diagnostics&,
void (unsigned int, unsigned int, bool&) block_pointer) const +
116
11 dyld 0x20e4901fe
dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&,
dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int)
block_pointer, void const*) const + 390
12 dyld 0x20e4530cd
dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&)
const + 225
13 dyld 0x20e4589c9
dyld4::JustInTimeLoader::runInitializers(dyld4::RuntimeState&)
const + 21
14 dyld 0x20e4532e5
dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&,
dyld3::Array<dyld4::Loader const*>&) const + 213
15 dyld 0x20e456414
dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::Runt
imeState&) const::$_1::operator()() const + 98
16 dyld 0x20e45337e
dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::Runt
imeState&) const + 96
17 dyld 0x20e472d9a
dyld4::APIs::runAllInitializersForMain() + 326
18 dyld 0x20e440203
dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 3364
19 dyld 0x20e43f2ff start
+ 1839
Thread 1:: com.apple.rosetta.exceptionserver
0 runtime 0x7ff7ffc40494
0x7ff7ffc3c000 + 17556
Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x000000010dc7da78 rbx: 0x000000010821b800 rcx:
0x00007fbe197169af rdx: 0xffffffffffffffef
rdi: 0x0000000000000000 rsi: 0x0000000000000000 rbp:
0x0000000315519020 rsp: 0x0000000315519020
r8: 0x0000000000000128 r9: 0x6f642f2f3a737074 r10:
0x30312f67726f2e69 r11: 0x31732f373030312e
r12: 0x000000010dc72518 r13: 0x0000000102ffc558 r14:
0x0000000315519668 r15: 0x0000000315519158
rip: <unavailable> rfl: 0x0000000000000206
tmp0: 0x0000000123cf0078 tmp1: 0x0000000124162f80 tmp2:
0x00000001237bc280
-----Original Message-----
From: Jeroen van der Zijp <je...@fo...>
Sent: Tuesday, April 16, 2024 6:04 PM
To: John Selverian <joh...@ja...>
Cc: fox...@li...
Subject: Re: [Foxgui-users] string length on Mac
On Tue, 16 Apr 2024 17:20:41 -0400
"John Selverian" <joh...@ja...> wrote:
> My program is crashing on start-up on the Mac. It works fine
on
> Windows and Linux. I can't catch it in the debugger, it crashes
in
> FXString::length() in the fox lib. I have some long strings (up
to
> 2000 chars). Could this be the problem? Is there a length limit
for
> FXString?
Length limit is, basically, MAX_INT (2**31-1). Why does it
crash? I don't know. I assume you've at least executed the
FXString constructor? FXString is essentially a pointer to a
text buffer, preceded by the size of the string [there's an extra
byte at the end, not accounted for in the length].
An empty string is a special pointer, which is preceeded by a
count of 0, and whose contents is a single end-of-string
character ('\0').
-- JVZ
_______________________________________________
Foxgui-users mailing list
Fox...@li...
https://lists.sourceforge.net/lists/listinfo/foxgui-users
|
|
From: John S. <joh...@ja...> - 2024-04-16 22:35:39
|
This is part of the dump I see:
System Integrity Protection: enabled
Notes:
PC register does not match crashing frame (0x0 vs 0x1237BC28F)
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0xfffffffffffffffc
Exception Codes: 0x0000000000000001, 0xfffffffffffffffc
Termination Reason: Namespace SIGNAL, Code 11 Segmentation
fault: 11
Terminating Process: exc handler [32740]
VM Region Info: 0xfffffffffffffffc is not in any region. Bytes
after previous region: 18446603349843460093
REGION TYPE START - END [ VSIZE]
PRT/MAX SHRMOD REGION DETAIL
unused __TEXT 7ffca5bc0000-7ffcd40cc000 [741.0M]
r-x/r-x SM=COW unused unknown system shared lib __TEXT
--->
UNUSED SPACE AT END
Error Formulating Crash Report:
PC register does not match crashing frame (0x0 vs 0x1237BC28F)
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libFOX-1.7.0.dylib 0x1237bc28f
FX::FXString::length() const + 15
1 libFOX-1.7.0.dylib 0x1239fb0af
FX::FXString::append(FX::FXString const&) + 47
2 libFOX-1.7.0.dylib 0x123a0177c
FX::operator+(FX::FXString const&, FX::FXString const&) + 60
3 MPDB 0x10821b267
__cxx_global_var_init.31 + 55
4 MPDB 0x10821b859
_GLOBAL__sub_I_ReferencesAlAlloys.cpp + 89
5 dyld 0x20e45639f
invocation function for block in
dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&)
const::$_0::operator()() const + 185
6 dyld 0x20e4904c8
invocation function for block in
dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&,
dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int)
block_pointer, void const*) const + 133
7 dyld 0x20e484bcf
invocation function for block in
dyld3::MachOFile::forEachSection(void
(dyld3::MachOFile::SectionInfo const&, bool, bool&)
block_pointer) const + 543
8 dyld 0x20e43b07f
dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void
(load_command const*, bool&) block_pointer) const + 249
9 dyld 0x20e483d0c
dyld3::MachOFile::forEachSection(void
(dyld3::MachOFile::SectionInfo const&, bool, bool&)
block_pointer) const + 176
10 dyld 0x20e4861b0
dyld3::MachOFile::forEachInitializerPointerSection(Diagnostics&,
void (unsigned int, unsigned int, bool&) block_pointer) const +
116
11 dyld 0x20e4901fe
dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&,
dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int)
block_pointer, void const*) const + 390
12 dyld 0x20e4530cd
dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&)
const + 225
13 dyld 0x20e4589c9
dyld4::JustInTimeLoader::runInitializers(dyld4::RuntimeState&)
const + 21
14 dyld 0x20e4532e5
dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&,
dyld3::Array<dyld4::Loader const*>&) const + 213
15 dyld 0x20e456414
dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::Runt
imeState&) const::$_1::operator()() const + 98
16 dyld 0x20e45337e
dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::Runt
imeState&) const + 96
17 dyld 0x20e472d9a
dyld4::APIs::runAllInitializersForMain() + 326
18 dyld 0x20e440203
dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 3364
19 dyld 0x20e43f2ff start
+ 1839
Thread 1:: com.apple.rosetta.exceptionserver
0 runtime 0x7ff7ffc40494
0x7ff7ffc3c000 + 17556
Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x000000010dc7da78 rbx: 0x000000010821b800 rcx:
0x00007fbe197169af rdx: 0xffffffffffffffef
rdi: 0x0000000000000000 rsi: 0x0000000000000000 rbp:
0x0000000315519020 rsp: 0x0000000315519020
r8: 0x0000000000000128 r9: 0x6f642f2f3a737074 r10:
0x30312f67726f2e69 r11: 0x31732f373030312e
r12: 0x000000010dc72518 r13: 0x0000000102ffc558 r14:
0x0000000315519668 r15: 0x0000000315519158
rip: <unavailable> rfl: 0x0000000000000206
tmp0: 0x0000000123cf0078 tmp1: 0x0000000124162f80 tmp2:
0x00000001237bc280
-----Original Message-----
From: Jeroen van der Zijp <je...@fo...>
Sent: Tuesday, April 16, 2024 6:04 PM
To: John Selverian <joh...@ja...>
Cc: fox...@li...
Subject: Re: [Foxgui-users] string length on Mac
On Tue, 16 Apr 2024 17:20:41 -0400
"John Selverian" <joh...@ja...> wrote:
> My program is crashing on start-up on the Mac. It works fine
on
> Windows and Linux. I can't catch it in the debugger, it crashes
in
> FXString::length() in the fox lib. I have some long strings (up
to
> 2000 chars). Could this be the problem? Is there a length limit
for
> FXString?
Length limit is, basically, MAX_INT (2**31-1). Why does it
crash? I don't know. I assume you've at least executed the
FXString constructor? FXString is essentially a pointer to a
text buffer, preceded by the size of the string [there's an extra
byte at the end, not accounted for in the length].
An empty string is a special pointer, which is preceeded by a
count of 0, and whose contents is a single end-of-string
character ('\0').
-- JVZ
|
|
From: Jeroen v. d. Z. <je...@fo...> - 2024-04-16 22:21:09
|
On Tue, 16 Apr 2024 17:20:41 -0400
"John Selverian" <joh...@ja...> wrote:
> My program is crashing on start-up on the Mac. It works fine on
> Windows and Linux. I can't catch it in the debugger, it crashes
> in FXString::length() in the fox lib. I have some long strings
> (up to 2000 chars). Could this be the problem? Is there a length
> limit for FXString?
Length limit is, basically, MAX_INT (2**31-1). Why does it
crash? I don't know. I assume you've at least executed the
FXString constructor? FXString is essentially a pointer to
a text buffer, preceded by the size of the string [there's
an extra byte at the end, not accounted for in the length].
An empty string is a special pointer, which is preceeded by
a count of 0, and whose contents is a single end-of-string
character ('\0').
-- JVZ
|
|
From: John S. <joh...@ja...> - 2024-04-16 21:40:11
|
My program is crashing on start-up on the Mac. It works fine on Windows and Linux. I can't catch it in the debugger, it crashes in FXString::length() in the fox lib. I have some long strings (up to 2000 chars). Could this be the problem? Is there a length limit for FXString? js |
|
From: Jeroen v. d. Z. <je...@fo...> - 2024-04-07 15:11:05
|
On Sat, 6 Apr 2024 19:33:42 +0200 Enno Rehling <enn...@gm...> wrote: >I have a FXTextField in my application, and when I insert text into it that >starts one or more leading tab characters, the rendering of the text goes >haywire: >[image: fox_text.png] >The text that it's trying to display is "<tab><tab>Lorem ipsum dolor sit >amet, consectetur adipiscing elit" - notice the white space at the end >followed by another t, and the weird artifacts in "adipiscing" that make >the word unreadable. >This artifacting gets word when I move the text cursor backwards through >the text: Interesting. The reason I don't think I've seen this is because there's no way to enter a tab into FXTextField. Or any control character, for that matter. So text drawing in FXTextField has no "substitute" characters to render the way FXText does. Maybe this is something that should be fixed, or at very least, protected against. -- JVZ -- +----------------------------------------------------------------------------+ | Copyright (C) 14:00 11/25/2023 Jeroen van der Zijp. All Rights Reserved. | +----------------------------------------------------------------------------+ |
|
From: Enno R. <enn...@gm...> - 2024-04-06 17:34:12
|
I have a FXTextField in my application, and when I insert text into it that starts one or more leading tab characters, the rendering of the text goes haywire: [image: fox_text.png] The text that it's trying to display is "<tab><tab>Lorem ipsum dolor sit amet, consectetur adipiscing elit" - notice the white space at the end followed by another t, and the weird artifacts in "adipiscing" that make the word unreadable. This artifacting gets word when I move the text cursor backwards through the text: [image: fox_text2.png] I'm on Windows 11, using Fox 1.6.57 Enno. |
|
From: <je...@fo...> - 2024-03-04 13:35:44
|
On 2024-03-03 15:54, Basile Starynkevitch wrote: > Hello all, > > On Linux/Debian/Trixie x86-64 I successfully compiled fox 1.7.84. I > will using the libjansson JSON toolkit (might change it to jsoncpp) > > > However, the simple code on > https://github.com/bstarynk/misc-basile/blob/master/browserfox.cc > (GPLv3+ licensed, my git commit 33e829a254e1572), compiled (using the > build-browserfox.sh script there) with > > g++ -O -g -Wall -Wextra '-DGIT_ID="33e829a254e1572"' -Wall > -I/usr/local/include/fox-1.7 browserfox.cc -L/usr/local/lib -lFOX-1.7 > -ljansson -o browserfox > > when I run it with > > rimski.x86_64 ~/misc-basile 22:46 .0 % ./browserfox -D > @@browserfox.cc:151:start of ./browserfox pid 124949 on rimski git > 33e829a254e1572 build Mar 3 2024@22:46:01 for FOX 1.7.84 > @@browserfox.cc:122:BfWindow#1 in app @0x7ffdeae04770 > @@browserfox.cc:137:BfWindow:create#1 > @@browserfox.cc:158:show win#1 X=0,Y=0,W=800,H=650 > @@browserfox.cc:161:win#1 is shown > > don't show any window on my screen. for what it is worth, > > rimski.x86_64 ~/misc-basile 22:49 .0 % xdpyinfo|head -55 > name of display: :0 > version number: 11.0 > vendor string: The X.Org Foundation > vendor release number: 12101011 > X.Org version: 21.1.11 > maximum request size: 16777212 bytes > motion buffer size: 256 > bitmap unit, bit order, padding: 32, LSBFirst, 32 > image byte order: LSBFirst > number of supported pixmap formats: 7 > supported pixmap formats: > depth 1, bits_per_pixel 1, scanline_pad 32 > depth 4, bits_per_pixel 8, scanline_pad 32 > depth 8, bits_per_pixel 8, scanline_pad 32 > depth 15, bits_per_pixel 16, scanline_pad 32 > depth 16, bits_per_pixel 16, scanline_pad 32 > depth 24, bits_per_pixel 32, scanline_pad 32 > depth 32, bits_per_pixel 32, scanline_pad 32 > keycode range: minimum 8, maximum 255 > focus: window 0x3c00004, revert to Parent > number of extensions: 29 > BIG-REQUESTS > Composite > DAMAGE > DOUBLE-BUFFER > DPMS > DRI2 > DRI3 > GLX > Generic Event Extension > MIT-SCREEN-SAVER > MIT-SHM > Present > RANDR > RECORD > RENDER > SECURITY > SHAPE > SYNC > X-Resource > XC-MISC > XFIXES > XFree86-DGA > XFree86-VidModeExtension > XINERAMA > XInputExtension > XKEYBOARD > XTEST > XVideo > XVideo-MotionCompensation > default screen number: 0 > number of screens: 1 > > screen #0: > dimensions: 5360x1440 pixels (1414x380 millimeters) > > > What I am doing wrong? The create() routine in FXMainWindow never runs, because your overriding it with a version that doesn't call it. Thus, no window ever gets created... -- JVZ |
|
From: Basile S. <ba...@st...> - 2024-03-03 22:36:13
|
Hello all, On Linux/Debian/Trixie x86-64 I successfully compiled fox 1.7.84. I will using the libjansson JSON toolkit (might change it to jsoncpp) However, the simple code on https://github.com/bstarynk/misc-basile/blob/master/browserfox.cc (GPLv3+ licensed, my git commit 33e829a254e1572), compiled (using the build-browserfox.sh script there) with g++ -O -g -Wall -Wextra '-DGIT_ID="33e829a254e1572"' -Wall -I/usr/local/include/fox-1.7 browserfox.cc -L/usr/local/lib -lFOX-1.7 -ljansson -o browserfox when I run it with rimski.x86_64 ~/misc-basile 22:46 .0 % ./browserfox -D @@browserfox.cc:151:start of ./browserfox pid 124949 on rimski git 33e829a254e1572 build Mar 3 2024@22:46:01 for FOX 1.7.84 @@browserfox.cc:122:BfWindow#1 in app @0x7ffdeae04770 @@browserfox.cc:137:BfWindow:create#1 @@browserfox.cc:158:show win#1 X=0,Y=0,W=800,H=650 @@browserfox.cc:161:win#1 is shown don't show any window on my screen. for what it is worth, rimski.x86_64 ~/misc-basile 22:49 .0 % xdpyinfo|head -55 name of display: :0 version number: 11.0 vendor string: The X.Org Foundation vendor release number: 12101011 X.Org version: 21.1.11 maximum request size: 16777212 bytes motion buffer size: 256 bitmap unit, bit order, padding: 32, LSBFirst, 32 image byte order: LSBFirst number of supported pixmap formats: 7 supported pixmap formats: depth 1, bits_per_pixel 1, scanline_pad 32 depth 4, bits_per_pixel 8, scanline_pad 32 depth 8, bits_per_pixel 8, scanline_pad 32 depth 15, bits_per_pixel 16, scanline_pad 32 depth 16, bits_per_pixel 16, scanline_pad 32 depth 24, bits_per_pixel 32, scanline_pad 32 depth 32, bits_per_pixel 32, scanline_pad 32 keycode range: minimum 8, maximum 255 focus: window 0x3c00004, revert to Parent number of extensions: 29 BIG-REQUESTS Composite DAMAGE DOUBLE-BUFFER DPMS DRI2 DRI3 GLX Generic Event Extension MIT-SCREEN-SAVER MIT-SHM Present RANDR RECORD RENDER SECURITY SHAPE SYNC X-Resource XC-MISC XFIXES XFree86-DGA XFree86-VidModeExtension XINERAMA XInputExtension XKEYBOARD XTEST XVideo XVideo-MotionCompensation default screen number: 0 number of screens: 1 screen #0: dimensions: 5360x1440 pixels (1414x380 millimeters) What I am doing wrong? Thanks for your help, regards. -- Basile Starynkevitch <ba...@st...> (only mine opinions / les opinions sont miennes uniquement) 92340 Bourg-la-Reine, France web page: starynkevitch.net/Basile/ See/voir: https://github.com/RefPerSys/RefPerSys |
|
From: John S. <joh...@ja...> - 2024-02-29 16:35:52
|
I ran into a similar problem and had to install PNG 1.6. This was
unexpected since I kept my system updated, it was Ubuntu 20.04
-----Original Message-----
From: je...@fo... <je...@fo...>
Sent: Thursday, February 29, 2024 11:08 AM
To: Phil Otken <phi...@gm...>
Cc: fox...@li...
Subject: Re: [Foxgui-users] Build failure Oracle Linux 9.3
You have two choices: Install the old version of libpng (<1.2 I
believe) for the version of FOX you're using, or install the
current FOX library and use the newer version of PNG (currently
1.6).
The former is likely the Q&D fix to your problem, but you'd have
to recompile the old png library. Moreover, to ensure you'd be
able to ship your executables to others, I'd recommend linking it
statically, as your audience may not have the old png installed.
Long term, I suggest updating to FOX 1.7 which supports current
PNG library; it may require minor changes to your code, mostly.
The API of older PNG library had references to jump buffer [a
poor man's exception handling used in C]. In a nutshell, the
issue is that the newer CPUs of today need a different size of
this buffer.
-- JVZ
_______________________________________________
Foxgui-users mailing list
Fox...@li...
https://lists.sourceforge.net/lists/listinfo/foxgui-users
|
|
From: <je...@fo...> - 2024-02-29 16:08:31
|
You have two choices: Install the old version of libpng (<1.2 I believe)
for the version of FOX you're using, or install the current FOX library
and use the newer version of PNG (currently 1.6).
The former is likely the Q&D fix to your problem, but you'd have to
recompile the old png library. Moreover, to ensure you'd be able to
ship your executables to others, I'd recommend linking it statically,
as your audience may not have the old png installed.
Long term, I suggest updating to FOX 1.7 which supports current PNG
library; it may require minor changes to your code, mostly.
The API of older PNG library had references to jump buffer [a poor
man's exception handling used in C]. In a nutshell, the issue is that
the newer CPUs of today need a different size of this buffer.
-- JVZ
|
|
From: Enno R. <enn...@gm...> - 2024-02-29 14:29:16
|
That looks like a case of the wrong libpng version.
On 29-Feb-24 15:17, Phil Otken wrote:
> Trying to build fox-1.6.8. Build consistently fails with errors:
>
> fxpngio.cpp: In function 'void FX::user_error_fn(png_structp,
> png_const_charp)':
> fxpngio.cpp:78:18: error: invalid use of incomplete type 'png_struct'
> {aka 'struct png_struct_def'}
> 78 | longjmp(png_ptr->jmpbuf,1); // Bail out
> | ^~
> In file included from fxpngio.cpp:29:
> /usr/include/png.h:439:16: note: forward declaration of 'png_struct'
> {aka 'struct png_struct_def'}
> 439 | typedef struct png_struct_def png_struct;
> | ^~~~~~
> In file included from /usr/include/pngconf.h:51,
> from /usr/include/png.h:335,
> from fxpngio.cpp:29:
> fxpngio.cpp: In function 'bool FX::fxloadPNG(FX::FXStream&,
> FX::FXColor*&, FX::FXint&, FX::FXint&)':
> fxpngio.cpp:121:20: error: invalid use of incomplete type 'png_struct'
> {aka 'struct png_struct_def'}
> 121 | if(setjmp(png_ptr->jmpbuf)){
> | ^~
> In file included from fxpngio.cpp:29:
> /usr/include/png.h:439:16: note: forward declaration of 'png_struct'
> {aka 'struct png_struct_def'}
> 439 | typedef struct png_struct_def png_struct;
> | ^~~~~~
> In file included from /usr/include/pngconf.h:51,
> from /usr/include/png.h:335,
> from fxpngio.cpp:29:
> fxpngio.cpp: In function 'bool FX::fxsavePNG(FX::FXStream&, const
> FXColor*, FX::FXint, FX::FXint)':
> fxpngio.cpp:234:20: error: invalid use of incomplete type 'png_struct'
> {aka 'struct png_struct_def'}
> 234 | if(setjmp(png_ptr->jmpbuf)){
> | ^~
> In file included from fxpngio.cpp:29:
> /usr/include/png.h:439:16: note: forward declaration of 'png_struct'
> {aka 'struct png_struct_def'}
> 439 | typedef struct png_struct_def png_struct;
> | ^~~~~~
> make[1]: * [Makefile:745: fxpngio.lo] Error 1
> make[1]: Leaving directory '/arch/fox/fox-1.6.8/src'
> make: * [Makefile:203: all-recursive] Error 1
>
> AFAIK, I installed all dependencies, or successors.It is entirely
> possible I missed something. Please advise.
>
> --
> Thanks,
> - Phil
>
> Phil Otken
> Overlogix, Inc. <https://overlogix.com/>
> also d.b.a.
> Practical Software and Database Engineering, Inc.
> c: +41 79 376 08 96
> e-mail: phi...@gm... <mailto:phi...@gm...>
> Online Professional Profile: http://www.linkedin.com/in/potken/
> <http://www.linkedin.com/in/potken/>
>
>
> _______________________________________________
> Foxgui-users mailing list
> Fox...@li...
> https://lists.sourceforge.net/lists/listinfo/foxgui-users
|
|
From: Phil O. <phi...@gm...> - 2024-02-29 14:18:14
|
Trying to build fox-1.6.8. Build consistently fails with errors:
fxpngio.cpp: In function 'void FX::user_error_fn(png_structp,
png_const_charp)':
fxpngio.cpp:78:18: error: invalid use of incomplete type 'png_struct' {aka
'struct png_struct_def'}
78 | longjmp(png_ptr->jmpbuf,1); // Bail out
| ^~
In file included from fxpngio.cpp:29:
/usr/include/png.h:439:16: note: forward declaration of 'png_struct' {aka
'struct png_struct_def'}
439 | typedef struct png_struct_def png_struct;
| ^~~~~~
In file included from /usr/include/pngconf.h:51,
from /usr/include/png.h:335,
from fxpngio.cpp:29:
fxpngio.cpp: In function 'bool FX::fxloadPNG(FX::FXStream&, FX::FXColor*&,
FX::FXint&, FX::FXint&)':
fxpngio.cpp:121:20: error: invalid use of incomplete type 'png_struct' {aka
'struct png_struct_def'}
121 | if(setjmp(png_ptr->jmpbuf)){
| ^~
In file included from fxpngio.cpp:29:
/usr/include/png.h:439:16: note: forward declaration of 'png_struct' {aka
'struct png_struct_def'}
439 | typedef struct png_struct_def png_struct;
| ^~~~~~
In file included from /usr/include/pngconf.h:51,
from /usr/include/png.h:335,
from fxpngio.cpp:29:
fxpngio.cpp: In function 'bool FX::fxsavePNG(FX::FXStream&, const FXColor*,
FX::FXint, FX::FXint)':
fxpngio.cpp:234:20: error: invalid use of incomplete type 'png_struct' {aka
'struct png_struct_def'}
234 | if(setjmp(png_ptr->jmpbuf)){
| ^~
In file included from fxpngio.cpp:29:
/usr/include/png.h:439:16: note: forward declaration of 'png_struct' {aka
'struct png_struct_def'}
439 | typedef struct png_struct_def png_struct;
| ^~~~~~
make[1]: * [Makefile:745: fxpngio.lo] Error 1
make[1]: Leaving directory '/arch/fox/fox-1.6.8/src'
make: * [Makefile:203: all-recursive] Error 1
AFAIK, I installed all dependencies, or successors.It is entirely possible
I missed something. Please advise.
--
Thanks,
- Phil
Phil Otken
Overlogix, Inc. <https://overlogix.com/>
also d.b.a.
Practical Software and Database Engineering, Inc.
c: +41 79 376 08 96
e-mail: phi...@gm...
Online Professional Profile: http://www.linkedin.com/in/potken/
|
|
From: John S. <joh...@ja...> - 2024-02-12 16:32:58
|
Got it working, thanks,
-----Original Message-----
From: Roland Hughes via Foxgui-users
<fox...@li...>
Sent: Monday, February 12, 2024 9:44 AM
To: fox...@li...
Subject: Re: [Foxgui-users] building on new release of Ubuntu
Because it needs to be nullptr instead of 0
it's a language standard compiler thing. You would have to force
the standard to C++11 for that to be legal.
On 2/12/24 08:21, John Selverian wrote:
> That did it...now I'm getting this error:
>
>
>
> FXTextCodec.cpp:65:7: error: ordered comparison of pointer with
> integer zero ('int' and 'const FXchar*' {aka 'const char*'})
> 65 | if(0<src){
> | ~^~~~
>
>
> -----Original Message-----
> From: je...@fo... <je...@fo...>
> Sent: Monday, February 12, 2024 8:25 AM
> To: joh...@ja...
> Cc: fox...@li...
> Subject: Re: [Foxgui-users] building on new release of Ubuntu
>
> On 2024-02-11 16:39, John Selverian wrote:
>> I just logged onto my Ubuntu VM and it wanted to upgrade me so
> I
>> foolishly click "Yes".
>>
>>
>>
>> Now when I make my program it can't find any libraries. So
> tried to
>> reinstall fox and it gives all of these errors saying it can't
> find
>> any libraries any more..
>>
>>
>>
>> Any ideas?
> I'm not sure about Ubuntu but I'm building stuff on latest Mint
> regularly. One needs to install the X11 development libraries,
though.
>
> apt install xorg-dev libtiff-dev libbz2-dev libx11-dev apt
install
> libtool automake autoconf
>
> I'm probably forgetting a few. But at least on Mint, I have no
> problem getting it all together.
>
> -- JVZ
>
>
>
> _______________________________________________
> Foxgui-users mailing list
> Fox...@li...
> https://lists.sourceforge.net/lists/listinfo/foxgui-users
--
Roland Hughes, President
Logikal Solutions
(630)-205-1593
http://www.theminimumyouneedtoknow.com
http://www.infiniteexposure.net
http://www.johnsmith-book.com
http://www.logikalblog.com
http://www.interestingauthors.com/blog
_______________________________________________
Foxgui-users mailing list
Fox...@li...
https://lists.sourceforge.net/lists/listinfo/foxgui-users
|
|
From: Roland H. <ro...@lo...> - 2024-02-12 15:24:19
|
Because it needs to be nullptr instead of 0
it's a language standard compiler thing. You would have to force the
standard to C++11 for that to be legal.
On 2/12/24 08:21, John Selverian wrote:
> That did it...now I'm getting this error:
>
>
>
> FXTextCodec.cpp:65:7: error: ordered comparison of pointer with
> integer zero ('int' and 'const FXchar*' {aka 'const char*'})
> 65 | if(0<src){
> | ~^~~~
>
>
> -----Original Message-----
> From: je...@fo... <je...@fo...>
> Sent: Monday, February 12, 2024 8:25 AM
> To: joh...@ja...
> Cc: fox...@li...
> Subject: Re: [Foxgui-users] building on new release of Ubuntu
>
> On 2024-02-11 16:39, John Selverian wrote:
>> I just logged onto my Ubuntu VM and it wanted to upgrade me so
> I
>> foolishly click "Yes".
>>
>>
>>
>> Now when I make my program it can't find any libraries. So
> tried to
>> reinstall fox and it gives all of these errors saying it can't
> find
>> any libraries any more..
>>
>>
>>
>> Any ideas?
> I'm not sure about Ubuntu but I'm building stuff on latest Mint
> regularly. One needs to install the X11 development libraries,
> though.
>
> apt install xorg-dev libtiff-dev libbz2-dev libx11-dev apt
> install libtool automake autoconf
>
> I'm probably forgetting a few. But at least on Mint, I have no
> problem getting it all together.
>
> -- JVZ
>
>
>
> _______________________________________________
> Foxgui-users mailing list
> Fox...@li...
> https://lists.sourceforge.net/lists/listinfo/foxgui-users
--
Roland Hughes, President
Logikal Solutions
(630)-205-1593
http://www.theminimumyouneedtoknow.com
http://www.infiniteexposure.net
http://www.johnsmith-book.com
http://www.logikalblog.com
http://www.interestingauthors.com/blog
|
|
From: John S. <joh...@ja...> - 2024-02-12 14:21:16
|
That did it...now I'm getting this error:
FXTextCodec.cpp:65:7: error: ordered comparison of pointer with
integer zero ('int' and 'const FXchar*' {aka 'const char*'})
65 | if(0<src){
| ~^~~~
-----Original Message-----
From: je...@fo... <je...@fo...>
Sent: Monday, February 12, 2024 8:25 AM
To: joh...@ja...
Cc: fox...@li...
Subject: Re: [Foxgui-users] building on new release of Ubuntu
On 2024-02-11 16:39, John Selverian wrote:
> I just logged onto my Ubuntu VM and it wanted to upgrade me so
I
> foolishly click "Yes".
>
>
>
> Now when I make my program it can't find any libraries. So
tried to
> reinstall fox and it gives all of these errors saying it can't
find
> any libraries any more..
>
>
>
> Any ideas?
I'm not sure about Ubuntu but I'm building stuff on latest Mint
regularly. One needs to install the X11 development libraries,
though.
apt install xorg-dev libtiff-dev libbz2-dev libx11-dev apt
install libtool automake autoconf
I'm probably forgetting a few. But at least on Mint, I have no
problem getting it all together.
-- JVZ
|
|
From: <je...@fo...> - 2024-02-12 13:25:02
|
On 2024-02-11 16:39, John Selverian wrote: > I just logged onto my Ubuntu VM and it wanted to upgrade me so I > foolishly click "Yes". > > > > Now when I make my program it can't find any libraries. So tried > to reinstall fox and it gives all of these errors saying it can't > find any libraries any more.. > > > > Any ideas? I'm not sure about Ubuntu but I'm building stuff on latest Mint regularly. One needs to install the X11 development libraries, though. apt install xorg-dev libtiff-dev libbz2-dev libx11-dev apt install libtool automake autoconf I'm probably forgetting a few. But at least on Mint, I have no problem getting it all together. -- JVZ |