Subversion Repositories HelenOS

Rev

Rev 4154 | Rev 4264 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4154 Rev 4241
Line 176... Line 176...
176
        ipc_answer_0(rid, ENOMEM);
176
        ipc_answer_0(rid, ENOMEM);
177
        return;
177
        return;
178
    }
178
    }
179
   
179
   
180
    ipc_data_write_finalize(callid, arg_buf, buf_len);
180
    ipc_data_write_finalize(callid, arg_buf, buf_len);
181
    ipc_answer_0(rid, EOK);
-
 
182
   
181
   
183
    arg_buf[buf_len] = '\0';
182
    arg_buf[buf_len] = '\0';
184
   
183
   
185
    /*
184
    /*
186
     * Count number of arguments
185
     * Count number of arguments
Line 196... Line 195...
196
    /* Allocate argv */
195
    /* Allocate argv */
197
    argv = malloc((n + 1) * sizeof(char *));
196
    argv = malloc((n + 1) * sizeof(char *));
198
   
197
   
199
    if (argv == NULL) {
198
    if (argv == NULL) {
200
        free(arg_buf);
199
        free(arg_buf);
201
        ipc_answer_0(callid, ENOMEM);
-
 
202
        ipc_answer_0(rid, ENOMEM);
200
        ipc_answer_0(rid, ENOMEM);
203
        return;
201
        return;
204
    }
202
    }
205
   
203
 
206
    /*
204
    /*
207
     * Fill argv with argument pointers
205
     * Fill argv with argument pointers
208
     */
206
     */
209
    p = arg_buf;
207
    p = arg_buf;
210
    n = 0;
208
    n = 0;
Line 216... Line 214...
216
        ++n;
214
        ++n;
217
    }
215
    }
218
   
216
   
219
    argc = n;
217
    argc = n;
220
    argv[n] = NULL;
218
    argv[n] = NULL;
-
 
219
 
-
 
220
    ipc_answer_0(rid, EOK);
221
}
221
}
222
 
222
 
223
/** Load the previously selected program.
223
/** Load the previously selected program.
224
 *
224
 *
225
 * @param rid
225
 * @param rid