I did some more rooting around, and discovered the do_sidebar() function in libs/html1.php
Code:
function do_sidebar($var_smarty) {
global $db, $dblang, $globals;
$_caching = $var_smarty->cache; // get the current cache settings
$var_smarty->cache = true; // cache has to be on otherwise is_cached will always be false
$var_smarty->cache_lifetime = -1; // lifetime has to be set to something otherwise is_cached will always be false
$thetpl = $var_smarty->get_template_vars('the_template_sidebar_modules') . '/categories.tpl';
if(isset($_REQUEST['category'])){
$thecat = $_REQUEST['category'];
}else{
$thecat = '';
}
if ($var_smarty->is_cached($thetpl, 'sidebar|category|'.$thecat)) {
//echo 'Cached';
$var_smarty->assign('cat_array', 'x');
}else{
//echo 'Uncached';
//Uncached Code continues below....
}
I added the echoes above to see if the cached or uncached version was being used, and found the uncached version was still being used, even with the cache addition in sidebar.tpl - i'm guessing something still needs to be added or turned on, but i have no idea what. :p