From 4b8d1bbef490ad8a6b3e3d64c0fdcb8a9f57d209 Mon Sep 17 00:00:00 2001
From: Hans Bolinder <hasse@erlang.org>
Date: Wed, 1 Jun 2011 14:42:03 +0200
Subject: Bugfixes

---
 lib/erl_docgen/priv/bin/xref_mod_app.escript | 7 ++++++-
 lib/erl_docgen/priv/xsl/db_html.xsl          | 2 ++
 lib/erl_docgen/priv/xsl/db_man.xsl           | 2 ++
 lib/erl_docgen/priv/xsl/db_pdf.xsl           | 2 ++
 4 files changed, 12 insertions(+), 1 deletion(-)

(limited to 'lib')

diff --git a/lib/erl_docgen/priv/bin/xref_mod_app.escript b/lib/erl_docgen/priv/bin/xref_mod_app.escript
index 13671ef2f8..c2bd62f9e0 100755
--- a/lib/erl_docgen/priv/bin/xref_mod_app.escript
+++ b/lib/erl_docgen/priv/bin/xref_mod_app.escript
@@ -73,7 +73,12 @@ usage() ->
 modapp(TopDir) ->
     AppDirs = filelib:wildcard(filename:join([TopDir,"lib","*"])),
     AM = [appmods(D) || D <- AppDirs],
-    lists:keysort(1, [{M,A} || {A,Ms} <- AM, M <- Ms]).
+    ERTS = [preloaded(TopDir) || lists:keyfind("erts", 1, AM) =:= false],
+    lists:keysort(1, [{M,A} || {A,Ms} <- ERTS++AM, M <- Ms]).
+
+preloaded(TopDir) ->
+    {"preloaded",Mods} = appmods(filename:join([TopDir,"erts","preloaded"])),
+    {"erts",Mods}.
 
 %% It's OK if too much data is generated as long as all applications
 %% and all modules are mentioned.
diff --git a/lib/erl_docgen/priv/xsl/db_html.xsl b/lib/erl_docgen/priv/xsl/db_html.xsl
index 982572aeef..a9052f29e5 100644
--- a/lib/erl_docgen/priv/xsl/db_html.xsl
+++ b/lib/erl_docgen/priv/xsl/db_html.xsl
@@ -433,6 +433,8 @@
     <!-- Search "local types" as well -->
     <xsl:variable name="local_types"
                 select="ancestor::desc/preceding-sibling::type
+	                       [string-length(@name) > 0]
+                      | ancestor::type_desc/preceding-sibling::type
 	                       [string-length(@name) > 0]"/>
     <xsl:variable name="has_anno_in_local_type">
       <xsl:for-each select="$local_types">
diff --git a/lib/erl_docgen/priv/xsl/db_man.xsl b/lib/erl_docgen/priv/xsl/db_man.xsl
index 25b62f68c5..8db4714249 100644
--- a/lib/erl_docgen/priv/xsl/db_man.xsl
+++ b/lib/erl_docgen/priv/xsl/db_man.xsl
@@ -363,6 +363,8 @@
     <!-- Search "local types" as well -->
     <xsl:variable name="local_types"
                 select="ancestor::desc/preceding-sibling::type
+	                       [string-length(@name) > 0]
+                      | ancestor::type_desc/preceding-sibling::type
 	                       [string-length(@name) > 0]"/>
     <xsl:variable name="has_anno_in_local_type">
       <xsl:for-each select="$local_types">
diff --git a/lib/erl_docgen/priv/xsl/db_pdf.xsl b/lib/erl_docgen/priv/xsl/db_pdf.xsl
index 5119e3e36a..a3d601d861 100644
--- a/lib/erl_docgen/priv/xsl/db_pdf.xsl
+++ b/lib/erl_docgen/priv/xsl/db_pdf.xsl
@@ -410,6 +410,8 @@
     <!-- Search "local types" as well -->
     <xsl:variable name="local_types"
                 select="ancestor::desc/preceding-sibling::type
+	                       [string-length(@name) > 0]
+                      | ancestor::type_desc/preceding-sibling::type
 	                       [string-length(@name) > 0]"/>
     <xsl:variable name="has_anno_in_local_type">
       <xsl:for-each select="$local_types">
-- 
cgit v1.2.3