diff options
Diffstat (limited to 'xc/programs/Xserver/hw/xfree86/parser/Monitor.c')
-rw-r--r-- | xc/programs/Xserver/hw/xfree86/parser/Monitor.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/xc/programs/Xserver/hw/xfree86/parser/Monitor.c b/xc/programs/Xserver/hw/xfree86/parser/Monitor.c index 9b91207c9..9009cc231 100644 --- a/xc/programs/Xserver/hw/xfree86/parser/Monitor.c +++ b/xc/programs/Xserver/hw/xfree86/parser/Monitor.c @@ -1,4 +1,4 @@ -/* $XFree86: xc/programs/Xserver/hw/xfree86/parser/Monitor.c,v 1.15 2000/10/24 22:45:10 dawes Exp $ */ +/* $XFree86: xc/programs/Xserver/hw/xfree86/parser/Monitor.c,v 1.17 2000/11/15 00:22:27 dawes Exp $ */ /* * * Copyright (c) 1997 Metro Link Incorporated @@ -201,6 +201,7 @@ xf86parseModeLine (void) if (xf86getToken (NULL) != NUMBER) Error (NUMBER_MSG, "Vscan"); ptr->ml_vscan = val.num; + ptr->ml_flags |= XF86CONF_VSCAN; break; case TT_CUSTOM: ptr->ml_flags |= XF86CONF_CUSTOM; @@ -345,6 +346,7 @@ xf86parseVerboseMode (void) case VSCAN: if (xf86getToken (NULL) != NUMBER) Error ("Vertical scan count expected", NULL); + ptr->ml_flags |= XF86CONF_VSCAN; ptr->ml_vscan = val.num; break; case EOF_TOKEN: @@ -634,10 +636,12 @@ xf86printMonitorSection (FILE * cf, XF86ConfMonitorPtr ptr) { int i; XF86ConfModeLinePtr mlptr; + XF86ConfModesLinkPtr mptr; XF86OptionPtr optr; while (ptr) { + mptr = ptr->mon_modes_sect_lst; fprintf (cf, "Section \"Monitor\"\n"); if (ptr->mon_comment) fprintf (cf, "\t### \"%s\"\n", ptr->mon_comment); @@ -647,6 +651,10 @@ xf86printMonitorSection (FILE * cf, XF86ConfMonitorPtr ptr) fprintf (cf, "\tVendorName \"%s\"\n", ptr->mon_vendor); if (ptr->mon_modelname) fprintf (cf, "\tModelName \"%s\"\n", ptr->mon_modelname); + while (mptr) { + fprintf (cf, "\tUseModes \"%s\"\n", mptr->ml_modes_str); + mptr = mptr->list.next; + } if (ptr->mon_width) fprintf (cf, "\tDisplaySize %d\t%d\n", ptr->mon_width, @@ -760,6 +768,8 @@ xf86printModesSection (FILE * cf, XF86ConfModesPtr ptr) fprintf (cf, " doublescan"); if (mlptr->ml_flags & XF86CONF_HSKEW) fprintf (cf, " hskew %d", mlptr->ml_hskew); + if (mlptr->ml_flags & XF86CONF_VSCAN) + fprintf (cf, " vscan %d", mlptr->ml_vscan); if (mlptr->ml_flags & XF86CONF_BCAST) fprintf (cf, " bcast"); fprintf (cf, "\n"); @@ -870,6 +880,7 @@ xf86validateMonitor (XF86ConfigPtr p, XF86ConfScreenPtr screen) screen->scrn_identifier); return (FALSE); } + modeslnk->ml_modes = modes; modeslnk = modeslnk->list.next; } return (TRUE); |