# HG changeset patch # User ulion # Date 1198312515 0 # Node ID 6b9447dc7590663c943b45af16783f4f800f7d9f # Parent 6f45e8b913cfcc46c1da4ff2dd69491efdde41ad Check availability before check argument for getting gamma properties. diff -r 6f45e8b913cf -r 6b9447dc7590 command.c --- a/command.c Sat Dec 22 06:35:35 2007 +0000 +++ b/command.c Sat Dec 22 08:35:15 2007 +0000 @@ -1059,7 +1059,7 @@ static int mp_property_gamma(m_option_t * prop, int action, void *arg, MPContext * mpctx) { - int *gamma = prop->priv, r; + int *gamma = prop->priv, r, val; if (!mpctx->sh_video) return M_PROPERTY_UNAVAILABLE; @@ -1080,12 +1080,13 @@ break; return r; case M_PROPERTY_GET: - if (!arg) - return M_PROPERTY_ERROR; - r = get_video_colors(mpctx->sh_video, prop->name, arg); - if (r <= 0) - break; - return r; + if (get_video_colors(mpctx->sh_video, prop->name, &val) > 0) { + if (!arg) + return M_PROPERTY_ERROR; + *(int *)arg = val; + return M_PROPERTY_OK; + } + break; case M_PROPERTY_STEP_UP: case M_PROPERTY_STEP_DOWN: *gamma += (arg ? *(int *) arg : 1) *