[padb] r358 committed - Fix to the MPI dll discovery code, if the new mpimsq_dll_locations...

padb at googlecode.com padb at googlecode.com
Wed Dec 9 21:15:07 GMT 2009


Revision: 358
Author: apittman
Date: Wed Dec  9 13:14:36 2009
Log: Fix to the MPI dll discovery code, if the new mpimsq_dll_locations
variable is present but it's value is NULL then padb was giving a
warning.  Handle this case directly by not trying to follow the
pointer if it's value is 0.

http://code.google.com/p/padb/source/detail?r=358

Modified:
  /trunk/src/padb

=======================================
--- /trunk/src/padb	Wed Dec  9 10:43:32 2009
+++ /trunk/src/padb	Wed Dec  9 13:14:36 2009
@@ -6202,14 +6202,16 @@
          push @all_dll_filenames, $carg->{mpi_dll};
      } else {
          my $loc = gdb_var_addr( $gdb, 'mpimsgq_dll_locations' );
-
+        my $base;
          if ($loc) {
+            $base = gdb_read_pointer( $gdb, $loc );
+        }
+
+        if ( defined $base and $base ne '0x0' ) {
              my $psize = gdb_type_size( $gdb, 'void *' );
-            my $base = $loc;
+
              my $filename;

-            $base = gdb_read_pointer( $gdb, $base );
-
              do {
                  my $strp = gdb_read_pointer( $gdb, $base );
                  $filename = gdb_string( $gdb, 1024, $strp );
@@ -6220,7 +6222,7 @@
              } while ( defined $filename );
          }

-        my $base = gdb_var_addr( $gdb, 'MPIR_dll_name' );
+        $base = gdb_var_addr( $gdb, 'MPIR_dll_name' );
          if ( not defined $base ) {
              target_error( $vp,
  'Process does not appear to be using MPI (No MPIR_dll_name symbol)'




More information about the padb-devel mailing list