1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
|
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
<xsl:output method="xml" indent="yes" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
<xsl:template match="/">
<html>
<head>
<title><xsl:value-of select="cdash/title"/></title>
<meta name="robots" content="noindex,nofollow" />
<link rel="StyleSheet" type="text/css">
<xsl:attribute name="href">stylish.css</xsl:attribute>
</link>
</head>
<body bgcolor="#111111">
<br/>
<!-- Main -->
<br/>
<h3>Dynamic analysis started on <xsl:value-of select="Site/DynamicAnalysis/StartDateTime"/></h3>
<table border="0">
<tr><td align="right"><b>Site Name:</b></td><td><xsl:value-of select="Site/@Hostname"/></td></tr>
<tr><td align="right"><b>Build Name:</b></td><td><xsl:value-of select="Site/@BuildStamp"/></td></tr>
</table>
<table xmlns:lxslt="http://xml.apache.org/xslt" cellspacing="2" cellpadding="3">
<tr>
<th width="20%">Name</th>
<th>Status</th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Memory Leak<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Uninitialized Memory Read<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Potential Memory Leak<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Uninitialized Memory Conditional<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Mismatched Deallocate<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Freeing Invalid Memory<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Invalid Pointer Read<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th><xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>Invalid Pointer Write<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text></th>
<th>Labels</th>
</tr>
<xsl:for-each select="Site/DynamicAnalysis/Test">
<tr align="center" bgcolor="#333333">
<td align="left"><a>
<xsl:attribute name="href"><xsl:value-of select="Name"/>.html</xsl:attribute>
<xsl:value-of select="Name"/>
</a></td>
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="./@Status='passed'">
normal
</xsl:when>
<xsl:otherwise>
warning
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./@Status"/></td>
<td></td>
<!-- Memory Leak -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='Memory Leak'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='Memory Leak']"/>
</td>
<!-- UMR -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='Uninitialized Memory Read'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='Uninitialized Memory Read']"/>
</td>
<!-- PML -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='Potential Memory Leak'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='Potential Memory Leak']"/>
</td>
<!--UMC -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='Uninitialized Memory Conditional'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='Uninitialized Memory Conditional']"/>
</td>
<!-- Mismatched deallocation -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='Mismatched deallocation'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='Mismatched deallocation']"/>
</td>
<!--FIM -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='FIM'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='FIM']"/>
</td>
<!-- IPR -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='IPR'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='IPR']"/>
</td>
<!-- IPW -->
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="count(./Results/Defect[@type='IPW'])>0">
warning
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="./Results/Defect[@type='IPW']"/>
</td>
<!-- Labels -->
<td>
<xsl:for-each select="labels/label">
<xsl:if test="position() > 1">,
<xsl:text disable-output-escaping="yes"> </xsl:text>
</xsl:if>
<nobr><xsl:value-of select="."/></nobr>
</xsl:for-each>
</td>
</tr>
</xsl:for-each>
</table>
<!-- FOOTER -->
<br/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
|