Merge patch from JeremyF:

24-sym-offset

When looking up a symbol, also attach an offset. Also changes to make
sprintf reentrant.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1299 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_mylibc.c b/coregrind/vg_mylibc.c
index c8d2642..60f969f 100644
--- a/coregrind/vg_mylibc.c
+++ b/coregrind/vg_mylibc.c
@@ -662,21 +662,18 @@
 
 
 /* A general replacement for sprintf(). */
-static Char* vg_sprintf_ptr;
-
-static void add_to_vg_sprintf_buf ( Char c )
-{
-   *vg_sprintf_ptr++ = c;
-}
-
 UInt VG_(sprintf) ( Char* buf, Char *format, ... )
 {
    UInt ret;
-
    va_list vargs;
+   Char *ptr = buf;
+   static void add_to_vg_sprintf_buf ( Char c )
+   {
+      *ptr++ = c;
+   }
+   
    va_start(vargs,format);
 
-   vg_sprintf_ptr = buf;
    ret = VG_(vprintf) ( add_to_vg_sprintf_buf, format, vargs );
    add_to_vg_sprintf_buf(0);