/* Appends an attribute selector to the current list of attribute selectors represented by a_this. Returns CR_OK upon successfull completion, an error code otherwise.  */
enum CRStatus cr_attr_sel_append_attr_sel(CRAttrSel *a_this, CRAttrSel *a_attr_sel)
/* Appends an attribute selector to the current list of attribute selectors represented by a_this. Returns CR_OK upon successfull completion, an error code otherwise.  */
enum CRStatus cr_attr_sel_append_attr_sel(CRAttrSel *a_this, CRAttrSel *a_attr_sel)
{
        CRAttrSel *cur_sel = NULL;
        g_return_val_if_fail (a_this && a_attr_sel, 
                              CR_BAD_PARAM_ERROR);
        for (cur_sel = a_this; 
             cur_sel->next; 
             cur_sel = cur_sel->next) ;
        cur_sel->next = a_attr_sel;
        a_attr_sel->prev = cur_sel;
        return CR_OK;
}