Browse Source

buggy select stmt in gproc:info/2; thks Garrett Smith

Ulf Wiger 15 years ago
parent
commit
4da42e3820
2 changed files with 33 additions and 1 deletions
  1. 32 0
      Makefile
  2. 1 1
      src/gproc.erl

+ 32 - 0
Makefile

@@ -0,0 +1,32 @@
+## The MIT License
+##
+## Copyright (c) 2008-2010 Ulf Wiger <ulf.wiger@erlang-solutions.com>,
+##
+## Permission is hereby granted, free of charge, to any person obtaining a
+## copy of this software and associated documentation files (the "Software"),
+## to deal in the Software without restriction, including without limitation
+## the rights to use, copy, modify, merge, publish, distribute, sublicense,
+## and/or sell copies of the Software, and to permit persons to whom the
+## Software is furnished to do so, subject to the following conditions:
+##
+## The above copyright notice and this permission notice shall be included in
+## all copies or substantial portions of the Software.
+##
+## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+## THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
+## FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+## DEALINGS IN THE SOFTWARE.
+
+DIRS=src 
+
+all:
+	for D in $(DIRS) ; do \
+	(cd $$D; ${MAKE}) ; \
+	done
+clean:
+	for D in $(DIRS) ; do \
+	(cd $$D; ${MAKE} clean) ; \
+	done

+ 1 - 1
src/gproc.erl

@@ -713,7 +713,7 @@ info(Pid) when is_pid(Pid) ->
 %% same as [http://www.erlang.org/doc/man/erlang.html#process_info-2].
 %% same as [http://www.erlang.org/doc/man/erlang.html#process_info-2].
 %% @end
 %% @end
 info(Pid, ?MODULE) ->
 info(Pid, ?MODULE) ->
-    Keys = ets:select(?TAB, [{ {{Pid,'$1'}}, [], ['$1'] }]),
+    Keys = ets:select(?TAB, [{ {{Pid,'$1'}, r}, [], ['$1'] }]),
     {?MODULE, lists:zf(
     {?MODULE, lists:zf(
                 fun(K) ->
                 fun(K) ->
                         try V = get_value(K, Pid),
                         try V = get_value(K, Pid),