Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 4347 → Rev 4348

/branches/dynload/uspace/lib/rtld/module.c
102,13 → 102,13
* construct soname by chopping off the path. Otherwise
* treat it as soname.
*/
p = strrchr(name, '/');
p = str_rchr(name, '/');
soname = p ? (p + 1) : name;
 
/* Traverse list of all modules. Not extremely fast, but simple */
for (cur = head->next; cur != head; cur = cur->next) {
m = list_get_instance(cur, module_t, modules_link);
if (strcmp(m->dyn.soname, soname) == 0) {
if (str_cmp(m->dyn.soname, soname) == 0) {
return m; /* Found */
}
}
135,15 → 135,14
exit(1);
}
 
if (strlen(name) > NAME_BUF_SIZE - 2) {
if (str_size(name) > NAME_BUF_SIZE - 2) {
printf("soname too long. increase NAME_BUF_SIZE\n");
exit(1);
}
 
/* Prepend soname with '/lib/' */
name_buf[0] = '/';
strcpy(name_buf, "/lib/");
strcpy(name_buf + 5, name);
str_cpy(name_buf, NAME_BUF_SIZE, "/lib/");
str_cpy(name_buf + 5, NAME_BUF_SIZE - 5, name);
 
/* FIXME: need to real allocation of address space */
m->bias = runtime_env->next_bias;