If you will have problems with tracing then please tests
code below. It's rtl/gtos2/gtos2.c hb_gt_os2_ReadKey()
replacement.
[...]


>As you can see with GTCGI it's related to GT.
>Looks like it's caused by keyboard related functions when
>executed from non main thread.

>> Not tested yet with your code replacement
>This modification should show where exactly it fails.

Wait, I was doing test


Did you see this info in gtos2.c about 16 bit ?
-------------
 * Copyright 2000 - 2001 Maurilio Longo <[EMAIL PROTECTED]>
 *    hb_gt_DispBegin() / hb_gt_DispEnd()
* hb_gt_ScreenPtr() and hb_gt_xYYYY() functions and virtual screen support inside hb_gt_XXXX()s
 *    16 bit KBD subsystem use inside hb_gt_os2_ReadKey()
-------------


Using HB_GT_OS2_DEFAULT

Harbour Terminal: OS/2 console
Harbour 1.1.0dev (Rev. 9846)
OS/2 4.50
DS avail=1721512KB  OS avail=1721512KB  EMM avail=0KB  MemStat:Off  MT:On

It pass (5) label tracing without problems and fail at same point

---------------
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_inkeyPoll()
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
2. hb_inkeyPoll()
3. hb_inkeyPoll()
1. hb_gt_os2_ReadKey()    <-------
2. hb_gt_os2_ReadKey()
3. hb_gt_os2_ReadKey()
4. hb_gt_os2_ReadKey()
5. hb_gt_os2_ReadKey()
4. hb_inkeyPoll()
_hb_gettid()
TID=1
5. hb_inkeyPoll()
6. hb_inkeyPoll()
1. hb_threadMutexLock()
_hb_gettid()
TID=1
_hb_gettid()
TID=1
2. hb_threadMutexLock()
_hb_gettid()
TID=1
1. hb_inkeyPoll()
1. hb_threadMutexLock()
_hb_gettid()
TID=2
_hb_gettid()
TID=2
2. hb_threadMutexLock()
2. hb_inkeyPoll()
3. hb_inkeyPoll()
SYS1808:
The process has stopped.  The software diagnostic
code (exception code) is  0001.

---------------


David Macias

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to