@@ -103,7 +103,6 @@ struct vidcap_deltacast_dvi_state {
103103#endif // defined DELTA_DVI_DEPRECATED
104104
105105
106- static void usage (void );
107106static decltype (EEDDIDOK) CheckEEDID(BYTE pEEDIDBuffer[256 ]);
108107
109108const static map<VHD_DV_EEDID_PRESET, const char *> edid_presets = {
@@ -122,10 +121,12 @@ const static map<VHD_DV_EEDID_PRESET, const char *> edid_presets = {
122121 { (VHD_DV_EEDID_PRESET) -1 , " avoid E-EDID loading" },
123122};
124123
125- static void usage (void )
124+ static void
125+ usage (bool full)
126126{
127127 col () << " Usage:\n " ;
128128 col () << SBOLD (SRED (" \t -t deltacast-dv" ) << " [:device=<index>][:channel=<channel>][:codec=<color_spec>][:preset=<preset>|:format=<format>]" ) << " \n " ;
129+ col () << SBOLD (" \t -t deltacast-dv:[full]help" ) << " \n " ;
129130 col () << " where\n " ;
130131
131132 col () << SBOLD (" \t <index>" ) << " - index of DVI card\n " ;
@@ -148,7 +149,7 @@ static void usage(void)
148149 col () << SBOLD (" \t <format>" ) << " may be format description (DVI-A), E-EDID will be ignored\n " ;
149150 col () << " \t\t video format is in the format " << SBOLD (" <width>x<height>@<fps>" ) << " \n " ;
150151
151- print_available_delta_boards (false );
152+ print_available_delta_boards (full );
152153}
153154
154155static decltype (EEDDIDOK) CheckEEDID(BYTE pEEDIDBuffer[256 ])
@@ -465,26 +466,26 @@ vidcap_deltacast_dvi_init(struct vidcap_params *params, void **state)
465466 return VIDCAP_INIT_AUDIO_NOT_SUPPORTED;
466467 }
467468
468- char *init_fmt = NULL ,
469- *tmp = NULL ;
470- if (vidcap_params_get_fmt (params) != NULL )
471- tmp = init_fmt = strdup (vidcap_params_get_fmt (params));
472- if (init_fmt && strcmp (init_fmt, " help" ) == 0 ) {
473- free (tmp);
474- usage ();
469+ const char *cfg = vidcap_params_get_fmt (params);
470+ if (strcmp (cfg, " help" ) == 0 ||
471+ strcmp (cfg, " fullhelp" ) == 0 ) {
472+ usage (strcmp (cfg, " fullhelp" ) == 0 );
475473 return VIDCAP_INIT_NOERR;
476474 }
477475
478476 s = new vidcap_deltacast_dvi_state ();
479477 if (s == NULL ) {
480478 printf (" Unable to allocate DELTACAST state\n " );
481- goto error ;
479+ return VIDCAP_INIT_FAIL ;
482480 }
483481
484482 s->codec = BGR;
485483 s->configured = false ;
486484 s->BoardHandle = s->StreamHandle = NULL ;
487485
486+ char *init_fmt = strdup (cfg);
487+ char *tmp = init_fmt;
488+
488489 if (init_fmt)
489490 {
490491 char *save_ptr = NULL ;
0 commit comments