Hi Thomas,

On Sat, Oct 13, 2018 at 09:11:32AM +0200, Thomas Beierlein wrote:
> I just found time to add your last changes to TLF. Thanks for finding
> the problem.
> 
> There is still one problem with your solution which you should sort out:
> fldigi_get_log_call() is called from background_process which runs as a
> separate thread parallel to the logging front end function logit().
> That may be ok for just polling fldigi and displaying the
> received text in the rtty window. But for manipulating hiscall and
> displaying the according country information it may result in problems
> as both - your function and callinput() may manipulate the same data.

yes, it's clear for me (now...).

> Furthermore neither getctydata() nor searchlog() are checked to be
> threadsafe, so calling it from the background thread may be
> problematic.

as I see, both function called from different threads - without
fldigi_get_log_call(), so we have to review anyway.
 
> I have added the code as is to get forward with the 1.3.1 release but
> you should sort out the problems in next time.

ok - what should we do? After first and quick review I thought we
can make a new function in callinput.c, called sethiscall(),
which waits a string, and sets the hiscall. All other function in
different threads collects the callsign in a local buffer, and
call this function. This new function should rentrant and thread
safe... any idea?

 
> And just another wish: Please do not add every global variable into
> main.c (there are already much to much there). Put it where it
> logically belongs (see my last commit).

ok, thanks for notification.

73, Ervin
 

_______________________________________________
Tlf-devel mailing list
Tlf-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tlf-devel

Reply via email to