| 953 | } |
| 954 | |
| 955 | void fxUnscheduleSharedTimer(txSharedTimer* timer) |
| 956 | { |
| 957 | txSharedTimer** address; |
| 958 | txSharedTimer* link; |
| 959 | fxLockMutex(&(gxSharedTimers.mutex)); |
| 960 | address = (txSharedTimer**)&(gxSharedTimers.first); |
| 961 | while ((link = *address)) { |
| 962 | if (link == timer) { |
| 963 | *address = link->next; |
| 964 | c_free(timer); |
| 965 | break; |
| 966 | } |
| 967 | address = &(link->next); |
| 968 | } |
| 969 | fxUnlockMutex(&(gxSharedTimers.mutex)); |
| 970 | } |
| 971 | |
| 972 | void fxRunLoop(txMachine* the) |
| 973 | { |