http://www.mediawiki.org/wiki/Special:Code/MediaWiki/97463
Revision: 97463
Author: mkroetzsch
Date: 2011-09-19 10:47:21 +0000 (Mon, 19 Sep 2011)
Log Message:
-----------
filter internal non-page elements from query results in the store
(largely fixes Bug 30969)
Modified Paths:
--------------
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_QueryResult.php
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_SQLStore2_Queries.php
Modified:
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_QueryResult.php
===================================================================
--- trunk/extensions/SemanticMediaWiki/includes/storage/SMW_QueryResult.php
2011-09-19 10:43:42 UTC (rev 97462)
+++ trunk/extensions/SemanticMediaWiki/includes/storage/SMW_QueryResult.php
2011-09-19 10:47:21 UTC (rev 97463)
@@ -71,11 +71,6 @@
* @param boolean $furtherRes
*/
public function __construct( array $printRequests, SMWQuery $query,
array $results, SMWStore $store, $furtherRes = false ) {
- // FIXME: this is a evil hack treating the symptom of something
going wrong closer to the store
-// if ( count( $results ) > 0 && $results[0]->getInterwiki() ===
SMW_SQL2_SMWBORDERIW ) {
-// unset( $results[0] );
-// }
-
$this->mResults = $results;
reset( $this->mResults );
$this->mPrintRequests = $printRequests;
Modified:
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_SQLStore2_Queries.php
===================================================================
---
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_SQLStore2_Queries.php
2011-09-19 10:43:42 UTC (rev 97462)
+++
trunk/extensions/SemanticMediaWiki/includes/storage/SMW_SQLStore2_Queries.php
2011-09-19 10:47:21 UTC (rev 97463)
@@ -390,14 +390,16 @@
$qobj->where, 'SMW::getQueryResult', $sql_options );
$qr = array();
- $count = 0;
+ $count = 0; // the number of fetched results ( != number of
valid results in array $qr)
$prs = $query->getDescription()->getPrintrequests();
while ( ( $count < $query->getLimit() ) && ( $row =
$this->m_dbs->fetchObject( $res ) ) ) {
$count++;
- $v = new SMWDIWikiPage( $row->t, $row->ns, $row->iw,
$row->so );
- $qr[] = $v;
- $this->m_store->cacheSMWPageID( $row->id, $row->t,
$row->ns, $row->iw, $row->so );
+ if ( $row->iw == '' || $row->iw{0} != ':' ) {
+ $v = new SMWDIWikiPage( $row->t, $row->ns,
$row->iw, $row->so );
+ $qr[] = $v;
+ $this->m_store->cacheSMWPageID( $row->id,
$row->t, $row->ns, $row->iw, $row->so );
+ }
}
if ( $this->m_dbs->fetchObject( $res ) ) {
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs