Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/ipc/ipcrsc.c

    r82d515e9 rb7fd2a0  
    166166 * @param task  Task for which to allocate a new phone.
    167167 *
    168  * @return  New phone capability handle.
    169  * @return  Negative error code if a new capability cannot be allocated.
    170  */
    171 cap_handle_t phone_alloc(task_t *task)
    172 {
    173         cap_handle_t handle = cap_alloc(task);
    174         if (handle >= 0) {
     168 * @param[out] out_handle  New phone capability handle.
     169 *
     170 * @return  An error code if a new capability cannot be allocated.
     171 */
     172errno_t phone_alloc(task_t *task, cap_handle_t *out_handle)
     173{
     174        cap_handle_t handle;
     175        errno_t rc = cap_alloc(task, &handle);
     176        if (rc == EOK) {
    175177                phone_t *phone = slab_alloc(phone_cache, FRAME_ATOMIC);
    176178                if (!phone) {
     
    193195               
    194196                cap_publish(task, handle, kobject);
     197
     198                *out_handle = handle;
    195199        }
    196        
    197         return handle;
     200        return rc;
    198201}
    199202
Note: See TracChangeset for help on using the changeset viewer.