Skip to content

Commit

Permalink
- Patch #222385 by pwolanin: removed drupal_clone() hack in favor of …
Browse files Browse the repository at this point in the history
…the real PHP5 clone().
  • Loading branch information
dbuytaert committed Feb 17, 2008
1 parent 2103119 commit 01a4c0d
Show file tree
Hide file tree
Showing 6 changed files with 8 additions and 15 deletions.
2 changes: 1 addition & 1 deletion INSTALL.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Drupal requires a web server, PHP 4 (4.3.5 or greater) or PHP 5
(http://www.php.net/) and either MySQL (http://www.mysql.com/) or PostgreSQL
(http://www.postgresql.org/). The Apache web server and MySQL database are
recommended; other web server and database combinations such as IIS and
PostgreSQL have been tested to a lesser extent. When using MySQL, version 4.1.1
PostgreSQL have been tested to a lesser extent. When using MySQL, version 5.0
or greater is recommended to assure you can safely transfer the database.

For more detailed information about Drupal requirements, see "Requirements"
Expand Down
7 changes: 0 additions & 7 deletions includes/common.inc
Original file line number Diff line number Diff line change
Expand Up @@ -1567,13 +1567,6 @@ function base_path() {
return $GLOBALS['base_path'];
}

/**
* Provide a substitute clone() function for PHP4.
*/
function drupal_clone($object) {
return version_compare(phpversion(), '5.0') < 0 ? $object : clone($object);
}

/**
* Add a <link> tag to the page's HEAD.
*/
Expand Down
2 changes: 1 addition & 1 deletion modules/contact/contact.pages.inc
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ function contact_mail_page() {
*/
function contact_mail_page_validate($form, &$form_state) {
if (!$form_state['values']['cid']) {
form_set_error('category', t('You must select a valid category.'));
form_set_error('cid', t('You must select a valid category.'));
}
if (!valid_email_address($form_state['values']['mail'])) {
form_set_error('mail', t('You must enter a valid e-mail address.'));
Expand Down
6 changes: 3 additions & 3 deletions modules/node/node.module
Original file line number Diff line number Diff line change
Expand Up @@ -707,7 +707,7 @@ function node_load($param = array(), $revision = NULL, $reset = NULL) {
if ($cachable) {
// Is the node statically cached?
if (isset($nodes[$param])) {
return is_object($nodes[$param]) ? drupal_clone($nodes[$param]) : $nodes[$param];
return is_object($nodes[$param]) ? clone $nodes[$param] : $nodes[$param];
}
}
$cond = 'n.nid = %d';
Expand Down Expand Up @@ -764,7 +764,7 @@ function node_load($param = array(), $revision = NULL, $reset = NULL) {
}
}
if ($cachable) {
$nodes[$node->nid] = is_object($node) ? drupal_clone($node) : $node;
$nodes[$node->nid] = is_object($node) ? clone $node : $node;
}
}

Expand Down Expand Up @@ -2724,7 +2724,7 @@ function node_unpublish_by_keyword_action_submit($form, $form_state) {
*/
function node_unpublish_by_keyword_action($node, $context) {
foreach ($context['keywords'] as $keyword) {
if (strstr(node_view(drupal_clone($node)), $keyword) || strstr($node->title, $keyword)) {
if (strstr(node_view(clone $node), $keyword) || strstr($node->title, $keyword)) {
$node->status = 0;
watchdog('action', 'Set @type %title to unpublished.', array('@type' => node_get_types('name', $node), '%title' => $node->title));
break;
Expand Down
4 changes: 2 additions & 2 deletions modules/node/node.pages.inc
Original file line number Diff line number Diff line change
Expand Up @@ -394,7 +394,7 @@ function node_preview($node) {
// Display a preview of the node.
// Previewing alters $node so it needs to be cloned.
if (!form_get_errors()) {
$cloned_node = drupal_clone($node);
$cloned_node = clone $node;
$cloned_node->build_mode = NODE_BUILD_PREVIEW;
$output = theme('node_preview', $cloned_node);
}
Expand Down Expand Up @@ -432,7 +432,7 @@ function theme_node_preview($node) {
if ($preview_trimmed_version) {
drupal_set_message(t('The trimmed version of your post shows what your post looks like when promoted to the main page or when exported for syndication.<span class="no-js"> You can insert the delimiter "&lt;!--break--&gt;" (without the quotes) to fine-tune where your post gets split.</span>'));
$output .= '<h3>'. t('Preview trimmed version') .'</h3>';
$output .= node_view(drupal_clone($node), 1, FALSE, 0);
$output .= node_view(clone $node, 1, FALSE, 0);
$output .= '<h3>'. t('Preview full version') .'</h3>';
$output .= node_view($node, 0, FALSE, 0);
}
Expand Down
2 changes: 1 addition & 1 deletion modules/taxonomy/taxonomy.module
Original file line number Diff line number Diff line change
Expand Up @@ -838,7 +838,7 @@ function taxonomy_get_tree($vid, $parent = 0, $depth = -1, $max_depth = NULL) {
if (!empty($children[$vid][$parent])) {
foreach ($children[$vid][$parent] as $child) {
if ($max_depth > $depth) {
$term = drupal_clone($terms[$vid][$child]);
$term = clone $terms[$vid][$child];
$term->depth = $depth;
// The "parent" attribute is not useful, as it would show one parent only.
unset($term->parent);
Expand Down

0 comments on commit 01a4c0d

Please sign in to comment.