Ok, so after my last post on my WordPress 2.0 upgrade issues I started hacking around and discovered a fix but not exactly what it is on my setup that causes this problem while others are ok. If you are experencing this problem modify the wp-admin/plugins.php file to include an exit; after the header("Location: XXX"); commands. Just replace the first 25 lines of code with this:


<?php
require_once('admin.php');

if ( isset($_GET['action']) ) {
    check_admin_referer();

    if ('activate' == $_GET['action']) {
        $current = get_settings('active_plugins');
        if (!in_array($_GET['plugin'], $current)) {
            $current[] = trim( $_GET['plugin'] );
            sort($current);
            update_option('active_plugins', $current);
            include(ABSPATH . 'wp-content/plugins/' . trim( $_GET['plugin'] ));
            do_action('activate_' . trim( $_GET['plugin'] ));
        }
        header('Location: plugins.php?activate=true');
    } else if ('deactivate' == $_GET['action']) {
        $current = get_settings('active_plugins');
        array_splice($current, array_search( $_GET['plugin'], $current), 1 ); // Array-fu!
        update_option('active_plugins', $current);
        do_action('deactivate_' . trim( $_GET['plugin'] ));
        header('Location: plugins.php?deactivate=true');
    }
    exit;  // This is the fix
}

* Edit *
This fix has been included in WordPress 2.0.1.