mohit, perhaps you mean else { //now for color
j++; } note the braces. allan On Mon, 20 Jun 2005, Mohit Kumar wrote: > Hi All, > > I have the following piece of code: (kindly ignore the declarations..) > > options = sane_get_option_descriptor(handle, index); //index points to > mode option > int j=0; > if(options!=NULL) > { > while(options->constraint.string_list[j]) > { > if(strcmp(options->constraint.string_list[j] == "Grayscale" > { > SANE_Status status = > sane_control_option(handle,index,SANE_ACTION_SET_VALUE,(SANE_String*)"Grayscale",0); > . > . > . > . > } > else > //now for color > > j++; > } > } > > Now j=0 return Lineart, j=1 returns Halftone, j=2 returns Grayscale. > But for j=3 (it should have returned "Color"), program crashes and it > says cannot access memory at address 0x25. > > I have a HP ScanJet 6200C/6250C and I have verified it has all the four modes. > > Am i doing something wrong? I cannot understand why the fourth value > is giving me problems while the first three have gone correct? > > Thanks, > Mohit > > -- > sane-devel mailing list: sane-devel@lists.alioth.debian.org > http://lists.alioth.debian.org/mailman/listinfo/sane-devel > Unsubscribe: Send mail with subject "unsubscribe your_password" > to sane-devel-requ...@lists.alioth.debian.org > -- "so don't tell us it can't be done, putting down what you don't know. money isn't our god, integrity will free our souls" - Max Cavalera