Download drupal-6.24.tar.gztar.gz 1.05 MB
MD5: a37c6f22b624159fa5e4bc6896cdcf15
SHA-1: aadbac0691fe56ea4e0c7dc7dc85ac17c622d52d
SHA-256: cc9c08a7625565a059a2f7f37676636d84d968221d4a6d24368163ee50a5115d
Download drupal-6.24.zipzip 1.22 MB
MD5: fd91a08fa7eee70232812910d38b06dd
SHA-1: 132e60d8435d7cf06d228bfc9eea1b7fb4ccaf26
SHA-256: be780ab9a11a0e43552c6292d3fd39cdf9ddb4ba4b3f29965f8d0aab09fe7cee

Release info

Created by: Gábor Hojtsy
Created on: 1 Feb 2012 at 22:09 UTC
Last updated: 1 Feb 2012 at 22:11 UTC
Core compatibility: 6.x
Release type: Bug fixes

Release notes

The twentyfourth maintenance release of the Drupal 6 series. Only bugfixes have been committed. No security fixes are included in this release. New features are only being added to the forthcoming Drupal 8.0 release.

This release includes the security fixes from Drupal 6.23 which was released alongside Drupal 6.24. No additional security fixes are included.

The complete list of changes committed since Drupal 6.22 are as follows:

  • #879270 by Ben Coleman: query in taxonomy_node_get_terms() needs the v.weight field added to the SELECT because it was already present in the ORDER BY; improved PostgreSQL compatibility
  • #12274 by markoshust, DamienMcKenna, seanbfuller, cburschka, aufumy: do not accept email addresses with dots at the end as valid
  • #600836 by tim.cosgrove, dww, naxoc, Dave Reid: prevent batches from going indefinitely if their 'finished' value becomes bigger than 1
  • #289504 by mikeryan, catch, moshe weitzman: backport indexes from Drupal 7 on comments and node_comment_statistics to improve performance of mass-user operations such as deleting users en masse
  • #1278160 by tim.plunkett: lower the severity level in watchdog() for orphaned actions
  • #975754 by jhodgdon, Albert Volkman: fix phpdoc about access callback inheritance for menu items
  • #336483 by brianV, catch: add index for comment_count on column in node_comment_statistics to avoid full table scan when search index is updated for example
  • #1137848 by pillarsdotnet, BrockBoland, tim.plunkett: hide /filter/tips page from well behaving search engines, it is pointless to be included in search indexes
  • #648516 by cafuego, williamestrada: node_build_filter_query() should consider the vid of nodes when joining on term_data to consider only current revisions of nodes
  • #767104 by mgriego, EugenMayer, mkalkbrenner: taxonomy_node_save() should refresh the node terms (especially for free tagging vocabularies) when nodes are updated, so they are kept up to date in the same HTTP request
  • #720876 by pillarsdotnet: user_register_validate() should invoke user_module_invoke() with an account object rather than an array; improved PHP 5.3 compatibility
  • #269877 by neochief, roderik, akaliel, mathieu, jct, Jo Wouters, fago, ufku, fmjrey, nonsie, pfournier: avoid duplicate paths (again) in path_set_alias()
  • #147000 by Berdir, Dave Reid, pwolanin, pillarsdotnet, TR, jbrauer, dstol: rework module_rebuild_cache() and system_theme_data() to support locking, so that concurrent requests will not corrupt the data; fixes an issue where themes got disabled occasionally
  • #156582 by c960657, drico, pwolanin, townxelliot, Damien Tournoud, kbahey, mikeytown2, jpmckinney, craig_, zyxware: add missing timeout support to drupal_http_request() to avoid Drupal hanging on web service requests
  • #556842 by mh86, catch, bangpound, wojtha, deviantintegral: optimize taxonomy_get_tree() by building the tree internally instead of recursively to improve performance; especially good for bigger taxonomies
  • #504506 by andypost, pillarsdotnet, podarok: Drupal.formatPlural() did not pass on extra arguments for translations of some plural values
  • #1173012 by carlos8f, Fabianx, Gábor Hojtsy: do not remove blocks for disabled modules in _block_rehash() to avoid blocks disappearing for people following the update guide to the letter disabling contrib modules when updating Drupal core
  • #883038 by pillarsdotnet, ShutterFreak, anarcat: ereg() and ereg_replace() are deprecated but Drupal 6 will not migrate to preg to avoid breaking APIs, so we need to silence the warnings coming out of the use of ereg on PHP 5.3+
  • #1174496 by Eric_A, grendzy, greg.1.anderson, c31ck: drupal_error_handler() should not assume filter_xss() is available. It might be called before that is loaded. Also fixes Drush compatibility.
  • #825972 by daniels220, Reidsy, Albert Volkman: add phpdoc documentation to sess_read() and sess_write()
  • #1260932 by DjebbZ, pwolanin: hook_nodeapi() optional arguments should not be made required by some core modules either
  • #208793 by Damien Tournoud, kbahey, TR: instead of hardcoding the HTTP protocol version in responses, respond with the HTTP protocol version requested (or fall back to HTTP/1.0 if the requested protocol/version is unknown)
  • #971812 by mfb, twistor: aggregator ignores Atom id element, which is equivalent to RSS guid element
  • #845542 by pounard: db_query_temporary() will fail without CREATE TEMPORARY TABLES permission on MySQL, update install documentation for that
  • #1225364 by sivaji, ñull: body field label is configurable but hardcoded in min word count validation error message
  • #1103310 by c960657: lock_acquire() does not properly extend expired lock due to misuse of db_query() to check for affected rows
  • #909274 by ergonlogic, franz: user/0/delete should not be accessible even for administrators
  • #1006938 by dww, westwesterson: avoid PHP warnings in the PHP 4 XML parser caused by the relatively new XML data pieces produced at
  • #480082 by pp: add previously undocumented variables in system_send_email_action_form()'s message field description
  • #1173012 by carlos8f, Fabianx: fix poll_block() to not wrap the block list operation in permission checks which could result in block placement and configuration lost when block rehashing is run with a user lacking permissions to view content
  • #1283442 by Ben Coleman, twistor, ggevalt: aggregator_block()'s permission check on the list, configure and save operations could result in loss of aggregator blocks when block rehasing is invoked with a user who has no access to feeds; permissions should only be checked on the view op
  • #1169034 by mfb: fix notice in file_create_filename() for cases when the ext variable did not exist previously
  • #1196102 by James_Stallings, noisetteprod: improve phpdoc on taxonomy_check_vocabulary_hierarchy()
  • #338402 by rocket_nova, jhodgdon: improve documentation on node_get_types()
  • #1098556 by barbi, rocket_nova, kiamlaluno: search_box() documentation referred to theme_search_box_form() which is in fact implemented in search-block-form.tpl.php in Drupal 6
  • #1192178 by pillarsdotnet, jhodgdon: fix user_module_invoke() argument names to make more sense and phpdoc to document them (no behavioral change of course)
  • #1288838 by anrikun: fix bad code indentation in _locale_batch_build()
  • #1175614 by barbi, oriol_e9g, CashWilliams, aenw: improve phpdoc on block_list()
  • #1100260 by barbi, jhodgdon: fix phpdoc in batch operations example to have a redirect
  • #372766 by jhodgdon, jn2: phpdoc improvements to user_save()
  • #1222802 by franz, droplet, jhodgdon: cleanup for pager phpdoc blocks; add missing text argument doc to theme_pager_link
  • #1190846 by vitalsouto, ninizik: remove one of two copies of repeated phpdoc documentation on actions
  • #300714 by j0hn-smith, alexjarvis, lilou, linuxbox: sort node revisions by vid not timestamp.
  • #1149628 by Ben Coleman: fix blog module query to include all ORDER BY fields in select for PostgreSQL compatibility
  • #201876 by gpk: improve yellow in Garland tabledrag to stand out better for usability
  • #356359 by mgifford, Agileware: improve accessibility of the search form
  • #925580 by tbenice, rsevero, marcp: dix upload modules's form altering to be clearly compatible with PHP 5.3
  • #188947 by lyricnz: date_validate() takes a form element, not a whole form, correct the variable name to clean this up
  • #1154722 by mattconnolly, barbi, jhodgdon: link Form API reference to Drupal 6 version in Form API docs
  • #1095066 by drewish, barbi: improve node_build_content() return value documentation
  • #401266 by pillarsdotnet, jhodgdon: improve documentation on user_mail_tokens() to be more accurate on required account properties
  • #1184106 by barbi: improve documentation on db_set_active()
  • #1063636 by barbi, Rob Loach, TR: reference drupal_add_css() in drupal_get_css() docs
  • #1176524 by andypost, TR, dww: remove leftover CVS ID tags from Drupal core
  • #1169080 by barbi, csdco: improve documentation of file_set_status()
  • #623276 by jhodgdon: improve documentation on file_scan_directory()
  • #1123120 by kiamlaluno, mr.baileys: improve documentation for theme preprocess; hook argument was missing


The selected release is the release that will be used for automated testing. Optional projects are only used for testing.


No required projects


No optional projects