]> sourceware.org Git - glibc.git/commitdiff
Add missing DL_CALL_FCT
authorUlrich Drepper <drepper@gmail.com>
Tue, 21 Jun 2011 15:23:25 +0000 (11:23 -0400)
committerUlrich Drepper <drepper@gmail.com>
Tue, 21 Jun 2011 15:23:25 +0000 (11:23 -0400)
ChangeLog
elf/dl-close.c
inet/getnetgrent_r.c

index 14700e772d3dd4696ca511cf699844e7a8bfb385..270559ee3627cbf3902ea80de109593a1c7bcb72 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-06-21  Ulrich Drepper  <drepper@gmail.com>
+
+       * inet/getnetgrent_r.c: Use DL_CALL_FCT in several places.
+
 2011-06-20  David S. Miller  <davem@davemloft.net>
 
        * sysdeps/sparc/sparc32/dl-plt.h: Protect against multiple
index 229e288ef6a9a7df605d96c4cf3a06d0c0b2ac66..6f8d9d2c80b36a16a9180f9a970227e74f4aaf96 100644 (file)
@@ -123,12 +123,15 @@ _dl_close_worker (struct link_map *map)
        {
          if (map->l_type == lt_loaded)
            dl_close_state = rerun;
-         else if (map->l_type == lt_library)
+#if 1
+         else if (map->l_type == lt_library && map->l_initfini != map->l_orig_initfini)
            {
              struct link_map **oldp = map->l_initfini;
              map->l_initfini = map->l_orig_initfini;
+ _dl_printf("aaa\n");
              _dl_scope_free (oldp);
            }
+#endif
        }
 
       /* There are still references to this object.  Do nothing more.  */
index 0bac7b770e80c2cb2fa9e8813f1901ec9f80703d..7e13e3be52337747fc4ebcd00c745bd89d4932f4 100644 (file)
@@ -133,7 +133,7 @@ __internal_setnetgrent_reuse (const char *group, struct __netgrent *datap,
       assert (datap->data == NULL);
 
       /* Ignore status, we force check in `__nss_next2'.  */
-      status = (*fct.f) (group, datap);
+      status = DL_CALL_FCT (*fct.f, (group, datap));
 
       service_user *old_nip = datap->nip;
       no_more = __nss_next2 (&datap->nip, "setnetgrent", NULL, &fct.ptr,
@@ -145,7 +145,7 @@ __internal_setnetgrent_reuse (const char *group, struct __netgrent *datap,
 
          endfct = __nss_lookup_function (old_nip, "endnetgrent");
          if (endfct != NULL)
-           (void) (*endfct) (datap);
+           (void) DL_CALL_FCT (*endfct, (datap));
        }
     }
 
@@ -244,7 +244,7 @@ internal_getnetgrent_r (char **hostp, char **userp, char **domainp,
                    == NULL);
   while (! no_more)
     {
-      status = (*fct) (datap, buffer, buflen, &errno);
+      status = DL_CALL_FCT (*fct, (datap, buffer, buflen, &errno));
 
       if (status == NSS_STATUS_RETURN)
        {
@@ -362,7 +362,8 @@ innetgr (const char *netgroup, const char *host, const char *user,
          assert (entry.data == NULL);
 
          /* Open netgroup.  */
-         enum nss_status status = (*setfct.f) (current_group, &entry);
+         enum nss_status status = DL_CALL_FCT (*setfct.f,
+                                               (current_group, &entry));
 
          if (status == NSS_STATUS_SUCCESS
              && (getfct = __nss_lookup_function (entry.nip, "getnetgrent_r"))
@@ -370,7 +371,8 @@ innetgr (const char *netgroup, const char *host, const char *user,
            {
              char buffer[1024];
 
-             while ((*getfct) (&entry, buffer, sizeof buffer, &errno)
+             while (DL_CALL_FCT (*getfct,
+                                 (&entry, buffer, sizeof buffer, &errno))
                     == NSS_STATUS_SUCCESS)
                {
                  if (entry.type == group_val)
@@ -425,7 +427,7 @@ innetgr (const char *netgroup, const char *host, const char *user,
          /* Free all resources of the service.  */
          endfct = __nss_lookup_function (entry.nip, "endnetgrent");
          if (endfct != NULL)
-           (*endfct) (&entry);
+           DL_CALL_FCT (*endfct, (&entry));
 
          if (result != 0)
            break;
This page took 0.051668 seconds and 5 git commands to generate.