From dab99bde3b683344c4eab60035c08c4e4925525c Mon Sep 17 00:00:00 2001
From: Haru <haru@dotalux.com>
Date: Fri, 19 Jun 2015 17:50:56 +0200
Subject: Fixed HPMHookGen's inability to detect certain interface members

Private members as well as members of interfaces with more than one
section are now correctly detected.

Signed-off-by: Haru <haru@dotalux.com>
---
 tools/HPMHookGen/HPMHookGen.pl | 11 ++++++-----
 tools/HPMHookGen/doxygen.conf  |  2 +-
 2 files changed, 7 insertions(+), 6 deletions(-)

(limited to 'tools/HPMHookGen')

diff --git a/tools/HPMHookGen/HPMHookGen.pl b/tools/HPMHookGen/HPMHookGen.pl
index a2e0698d3..a77b50a3b 100755
--- a/tools/HPMHookGen/HPMHookGen.pl
+++ b/tools/HPMHookGen/HPMHookGen.pl
@@ -280,19 +280,20 @@ foreach my $file (@files) { # Loop through the xml files
 		$key = "inter_homunculus";
 	} elsif ($key =~ /homunculus/) {
 		$key = "homun";
-	} elsif ($key =~ /irc_bot/) {
+	} elsif ($key eq "irc_bot_interface") {
 		$key = "ircbot";
-	} elsif ($key =~ /log_interface/) {
+	} elsif ($key eq "log_interface") {
 		$key = "logs";
-	} elsif ($key =~ /pc_groups_interface/) {
+	} elsif ($key eq "pc_groups_interface") {
 		$key = "pcg";
-	} elsif ($key =~ /char_interface/) {
+	} elsif ($key eq "char_interface") {
 		$key = "chr";
 	} else {
 		$key =~ s/_interface//;
 	}
 
-	foreach my $v ($data->{compounddef}->{$filekey}->{sectiondef}->[0]) { # Loop through the sections
+	my $sectiondef = $data->{compounddef}->{$filekey}->{sectiondef};
+	foreach my $v (@$sectiondef) { # Loop through the sections
 		my $memberdef = $v->{memberdef};
 		foreach my $f (sort { # Sort the members in declaration order according to what the xml says
 					my $astart = $a->{location}->[0]->{bodystart} || $a->{location}->[0]->{line};
diff --git a/tools/HPMHookGen/doxygen.conf b/tools/HPMHookGen/doxygen.conf
index a8ec66627..3a848abe4 100644
--- a/tools/HPMHookGen/doxygen.conf
+++ b/tools/HPMHookGen/doxygen.conf
@@ -35,7 +35,7 @@ DISTRIBUTE_GROUP_DOC   = NO
 SUBGROUPING            = NO
 TYPEDEF_HIDES_STRUCT   = NO
 EXTRACT_ALL            = YES
-EXTRACT_PRIVATE        = NO
+EXTRACT_PRIVATE        = YES
 EXTRACT_STATIC         = NO
 EXTRACT_LOCAL_CLASSES  = NO
 EXTRACT_LOCAL_METHODS  = NO
-- 
cgit v1.2.3-70-g09d2