comparison src/coding.c @ 19763:ab2fd2c85986

(Ffind_operation_coding_system): If a function in XXX-coding-system-alist returns a coding system (instead of cons of coding systems), return cons of it.
author Kenichi Handa <handa@m17n.org>
date Fri, 05 Sep 1997 08:07:44 +0000
parents 49a1662b68dd
children e68cab4f1f70
comparison
equal deleted inserted replaced
19762:f6ca32374b0b 19763:ab2fd2c85986
3786 && STRINGP (XCONS (elt)->car) 3786 && STRINGP (XCONS (elt)->car)
3787 && fast_string_match (XCONS (elt)->car, target) >= 0) 3787 && fast_string_match (XCONS (elt)->car, target) >= 0)
3788 || (INTEGERP (target) && EQ (target, XCONS (elt)->car)))) 3788 || (INTEGERP (target) && EQ (target, XCONS (elt)->car))))
3789 { 3789 {
3790 val = XCONS (elt)->cdr; 3790 val = XCONS (elt)->cdr;
3791 /* Here, if VAL is both a valid coding system and a valid
3792 function symbol, we return VAL as a coding system. */
3791 if (CONSP (val)) 3793 if (CONSP (val))
3792 return val; 3794 return val;
3793 if (! SYMBOLP (val)) 3795 if (! SYMBOLP (val))
3794 return Qnil; 3796 return Qnil;
3795 if (! NILP (Fcoding_system_p (val))) 3797 if (! NILP (Fcoding_system_p (val)))
3796 return Fcons (val, val); 3798 return Fcons (val, val);
3797 if (!NILP (Ffboundp (val))) 3799 if (! NILP (Ffboundp (val)))
3798 return call1 (val, Flist (nargs, args)); 3800 {
3801 val = call1 (val, Flist (nargs, args));
3802 if (CONSP (val))
3803 return val;
3804 if (SYMBOLP (val) && ! NILP (Fcoding_system_p (val)))
3805 return Fcons (val, val);
3806 }
3799 return Qnil; 3807 return Qnil;
3800 } 3808 }
3801 } 3809 }
3802 return Qnil; 3810 return Qnil;
3803 } 3811 }