]> Kevux Git Server - fll/commitdiff
Update: f_thread_create() fixes.
authorKevin Day <thekevinday@gmail.com>
Tue, 19 Jan 2021 03:24:07 +0000 (21:24 -0600)
committerKevin Day <thekevinday@gmail.com>
Tue, 19 Jan 2021 03:24:07 +0000 (21:24 -0600)
The f_thread_create() function should allow for attribute and argument to be optional.
The pthread_create() allows for attribute to be NULL and I am now also assuming that the passed arguments can also be NULL.

level_0/f_thread/c/thread.c
level_0/f_thread/c/thread.h

index 105c98c58fb7d9609227a45a3aa8c6434f15c596..eac1436b1e911f80ca3b673f1bb43d52fc471d05 100644 (file)
@@ -555,10 +555,8 @@ extern "C" {
 #ifndef _di_f_thread_create_
   f_status_t f_thread_create(const f_thread_attribute_t *attribute, f_thread_id_t *id, void *(*routine) (void *), void *argument) {
     #ifndef _di_level_0_parameter_checking_
-      if (!attribute) return F_status_set_error(F_parameter);
       if (!id) return F_status_set_error(F_parameter);
       if (!routine) return F_status_set_error(F_parameter);
-      if (!argument) return F_status_set_error(F_parameter);
     #endif // _di_level_0_parameter_checking_
 
     const int error = pthread_create(id, attribute, routine, argument);
index f278c27615036542e9571bd727e10cbc9755df69..03b7d52b67bf4c5e5a31ecb1fefc145da34966af 100644 (file)
@@ -650,14 +650,16 @@ extern "C" {
  * Get the user account by the user id.
  *
  * @param attribute
- *   The thread attributes.
+ *   (optional) The thread attributes.
+ *   Set to NULL to use default attributes.
  * @param id
  *   The thread ID.
  *   This gets populated with the created thread ID (aka: the "child" thread).
  * @param routine
  *   The function to execute.
  * @param argument
- *   The structure containing all arguments to pass to the routine.
+ *   (optional) The structure containing all arguments to pass to the routine.
+ *   Set to NULL to not pass an argument.
  *
  * @return
  *   F_none on success.