If the site has multiple languages and a category is imported using any tool to import (ie. DBio or EasyPopulate) and the import does NOT contain data for all languages, category name can not be updated.

Example:
EN: Hardware
ES: Hardware-es
DE: (null)

Editing the category name in admin will not allow you to save the category name for DE language.

Simple way to reproduce the bug:
using vanilla ZC 1.5.6c, add a new language, then delete the entry from database for "Hardware" category (DELETE FROM categories_description WHERE categories_id = 1 AND language_id = 2;), then try to edit "Hardware" category and save second language name and/or description.

I understand this is not an actual Zen Cart bug because Zen Cart *will* generate the required DB entries for the new language, but the solution is stupid-simple, can save some headaches and IMHO should be the preferred way.
admin/categories.php line 153:
Code:
} elseif ($action == 'update_category') {
            $db->Execute('INSERT INTO '.TABLE_CATEGORIES_DESCRIPTION .'
                        (categories_id, language_id, categories_name, categories_description)
                        VALUES ("'.(int)$categories_id.'","'.(int)$languages[$i]['id'].'","'.$sql_data_array['categories_name'].'","'.$sql_data_array['categories_description'].'")
                        ON DUPLICATE KEY UPDATE categories_name = "'.$sql_data_array['categories_name'].'", categories_description = "'.$sql_data_array['categories_description'].'"');
          //zen_db_perform(TABLE_CATEGORIES_DESCRIPTION, $sql_data_array, 'insert on duplicate key update', "categories_id = '" . (int)$categories_id . "' and language_id = '" . (int)$languages[$i]['id'] . "'");
        }