From 4f6a8d389b5027e0828f33849b84a3748d1f36d2 Mon Sep 17 00:00:00 2001 From: bachy Date: Fri, 5 Oct 2012 14:03:27 +0200 Subject: [PATCH] includes/entity.inc patch http://drupal.org/node/1003788#comment-5195682 Signed-off-by: bachy --- includes/entity.inc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/includes/entity.inc b/includes/entity.inc index 832abe2f..f6e17ef3 100644 --- a/includes/entity.inc +++ b/includes/entity.inc @@ -160,6 +160,18 @@ class DrupalDefaultEntityController implements DrupalEntityControllerInterface { public function load($ids = array(), $conditions = array()) { $entities = array(); + # PATCH http://drupal.org/node/1003788#comment-5195682 + // Clean the $ids array to remove non-integer values that can be passed + // in from various sources, including menu callbacks. + if (is_array($ids)) { + foreach ($ids as $key => $id) { + if (empty($id) || ((string) $id !== (string) (int) $id)) { + unset($ids[$key]); + } + } + } + # endpatch + // Revisions are not statically cached, and require a different query to // other conditions, so separate the revision id into its own variable. if ($this->revisionKey && isset($conditions[$this->revisionKey])) {