Спасибо!
немножко дополнений...
Код
diff -urN 2.7/TNKernel/tn.c 2.7_mod/TNKernel/tn.c
--- 2.7/TNKernel/tn.c 2013-07-01 10:29:34.000000000 +0400
+++ 2.7_mod/TNKernel/tn.c 2013-07-16 12:42:45.687500000 +0400
@@ -238,12 +238,12 @@
TN_CHECK_NON_INT_CONTEXT
- tn_disable_interrupt();
-
if(priority <= 0 || priority >= TN_NUM_PRIORITY-1 ||
value < 0 || value > MAX_TIME_SLICE)
return TERR_WRONG_PARAM;
+ tn_disable_interrupt();
+
tn_tslice_ticks[priority] = value;
tn_enable_interrupt();
diff -urN 2.7/TNKernel/tn_event.c 2.7_mod/TNKernel/tn_event.c
--- 2.7/TNKernel/tn_event.c 2013-07-01 10:30:42.000000000 +0400
+++ 2.7_mod/TNKernel/tn_event.c 2013-07-16 12:43:43.015625000 +0400
@@ -349,10 +349,12 @@
{
TN_INTSAVE_DATA
+#if TN_CHECK_PARAM
if(evf == NULL || pattern == TN_INVALID_VAL)
return TERR_WRONG_PARAM;
if(evf->id_event != TN_ID_EVENT)
return TERR_NOEXS;
+#endif
TN_CHECK_NON_INT_CONTEXT
diff -urN 2.7/TNKernel/tn_mutex.c 2.7_mod/TNKernel/tn_mutex.c
--- 2.7/TNKernel/tn_mutex.c 2013-07-01 10:31:54.000000000 +0400
+++ 2.7_mod/TNKernel/tn_mutex.c 2013-07-16 12:44:39.609375000 +0400
@@ -93,7 +93,7 @@
TN_CHECK_NON_INT_CONTEXT
- if(tn_curr_run_task != mutex->holder)
+ if(mutex->holder && (tn_curr_run_task != mutex->holder))
return TERR_ILUSE;
//-- Remove all tasks(if any) from mutex's wait queue