8 nov 2001 Status report
-----------------------------

A serious bug has been found that makes me doubt the program has ever worked
properly.

In the Registry there is a key EchoFreeID, which contains the local machine
guid given in the form _with_braces_. The program reads that registry key in
function CEFController::InitInstance and tries to convert it from string to
guid by calling FromString(unsigned char* str) defined in EchoFreeBase.h.
The presence of braces prevents the function from correct converting and the
member CEFController::m_EchoFreeID remains uninitialized. This situation is
not treated anyhow so all further operation is carried out with the wrong
guid!

What is queer, in EchoFreeBase.h file, right next to FromString, I found the
realization of another function FromStringToUID, which works the same way
regardless that the braces are excluded from the string before the
conversion is done and it works all right. It seems like someone noticed
this bug and fixed the function but did not fixed all the calls to it. As I
saw no sense having two realization of one function: one being correct and
the other one - incorrect, I left only the correct version and added a
return value checkup to make sure the m_EchoFreeID is initialized properly.

I am not sure that having computers in two different LANs I will get
connected at all. I go on investigating the message exchange and I suspect
that there is a fatal point where the two guids are being compared:
destination and master guid and the control flow will never get out of the
loop.

Oleg.



_______________________________________________
Kaboodle-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kaboodle-devel

Reply via email to