On 03/12/2016 16:05, John Ralls wrote:
> 
>> On Dec 3, 2016, at 7:46 AM, Geert Janssens <geert.gnuc...@kobaltwit.be> 
>> wrote:
>>
>> Op zaterdag 3 december 2016 16:34:13 CET schreef Geert Janssens:
>>> Op vrijdag 2 december 2016 14:30:19 CET schreef John Ralls:
>>>>> On Dec 2, 2016, at 12:53 PM, John Ralls <jra...@ceridwen.us> wrote:
>>>>>> On Dec 2, 2016, at 12:47 PM, Robert Fewell <14ubo...@gmail.com> wrote:
>>>>>>
>>>>>> Just built master from
>>>>>> https://github.com/Gnucash/gnucash/commit/dd4b8a104d0f7ad2205407e8bf10f
>>>>>> ee
>>>>>> c364c8127 and I still do not see the errors Geert is having. Added a
>>>>>> Customer and a Vendor and still only have one of each.
>>>>>
>>>>> Bob,
>>>>>
>>>>> Yes, I'm also not yet able to reproduce the duplicate vendor issue.
>>>>> Geert
>>>>> mentioned on IRC that he's using Fedora-25 so I'm building a new VM with
>>>>> that to test.
>>>>
>>>> I can't reproduce it on Fedora-25 either.
>>>>
>>>> The save problems and crashes on master I *can* reproduce, so I'm working
>>>> on that.
>>>>
>>>> Regards,
>>>> John Ralls
>>>
>>> John,
>>>
>>> I  can confirm your commits fix the save problems and crashes. Thanks.
>>>
>>> As I appear to be the only one experiencing the other part of duplicate
>>> objects, I am digging further locally.
>>>
>>> Using gdb, I found that all non-core objects are registered twice.
>>> Once they are registered as part of loading the app-utils module, which in
>>> turn loads the engine module which then loads the business modules.
>>>
>>> The second time they are loaded because the python bindings load the engine
>>> module, triggering loading of the business modules again apparently.
>>>
>>> I have no idea (yet) why this didn't happen before the backend rewrite was
>>> merged back in.
>>>
>>> I suppose none of you have the python bindings enabled, which would explain
>>> why only I'm seeing this.
>>>
>>> Geert
>>
>> The easy one-line fix would be to test for engine_is_initialized == 1 in 
>> gnc_engine_init_part2 just like in gnc_engine_init_part1.
>>
>> I wonder though whether we'd want to move this up to gnc_engine_init in 
>> general though. Do we want the init hooks to be run each time some code 
>> calls 
>> gnc_engine_init or should they be called only once also ?
> 
> IMO we want to get rid of all of the dlopening and just link the convenience 
> libraries like a normal program. That's a lot of work, though, so for now we 
> should be loading only once.
> 
> Is the problem really the python bindings (src/optional/python-bindings) or 
> the python console (src/python) that loads the python bindings? 

Open Q: has anyone tried this on Win where the python stuff is known not
to work?

I think python is red herring in this for me and agree there are (at
least) two issues

-- 
Wm




_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to