Parcourir la source

Correct valuesSorter.Less function for uintptr.

The function sort be sorting the uintptr itself, not the address of it.
Also, the previous code could easily panic on an unaddressable
reflect.Value since it was trying to take an address.
Dave Collins il y a 12 ans
Parent
commit
3b4a2055ce
1 fichiers modifiés avec 1 ajouts et 1 suppressions
  1. 1 1
      spew/common.go

+ 1 - 1
spew/common.go

@@ -284,7 +284,7 @@ func (s *valuesSorter) Less(i, j int) bool {
 	case reflect.String:
 		return s.values[i].String() < s.values[j].String()
 	case reflect.Uintptr:
-		return s.values[i].UnsafeAddr() < s.values[j].UnsafeAddr()
+		return s.values[i].Uint() < s.values[j].Uint()
 	}
 	return s.values[i].String() < s.values[j].String()
 }