diff --git a/testcases/open_posix_testsuite/functional/threads/pi_test/pitest-1.c b/testcases/open_posix_testsuite/functional/threads/pi_test/pitest-1.c
index b8969a8..fe03ccf 100644
--- a/testcases/open_posix_testsuite/functional/threads/pi_test/pitest-1.c
+++ b/testcases/open_posix_testsuite/functional/threads/pi_test/pitest-1.c
@@ -197,7 +197,7 @@ void *thread_sample(void *arg)
 
 void *thread_tb(void *arg)
 {
-	unsigned long timeoutsec;
+	time_t timeoutsec;
 	struct timespec boost_time;
 	double seconds, t0, t1;
 	int rc;
@@ -206,8 +206,7 @@ void *thread_tb(void *arg)
 	
 	DPRINTF(stdout, "#EVENT %f TB Starts\n", seconds_read() - base_time);
 
-	timeoutsec = *(unsigned long*) arg;
-	boost_time.tv_sec = time(NULL) + (time_t)timeoutsec;
+	boost_time.tv_sec = time(NULL) + *((time_t*) arg);
 	boost_time.tv_nsec = 0;
 	
 	t0 = seconds_read();
@@ -296,8 +295,8 @@ int main(int argc, char **argv)
 
 	/* Start TB thread (boosting thread) */
 	DPRINTF(stderr,"Main Thread: start TB thread\n");
-	int timeout = multiplier * 20;
-	rc = pthread_create(&threadtb, &threadattr, thread_tb, 
+	time_t timeout = multiplier * 20;
+	rc = pthread_create(&threadtb, &threadattr, thread_tb,
 			    &timeout);
         if (rc != 0) {
                 EPRINTF("UNRESOLVED: pthread_create: %d %s",
