changed pio to used param->fixed_argv if the number of arguments is <= 3
This commit is contained in:
		| @ -2509,7 +2509,7 @@ QSE_EXPORT int qse_wcsspl ( | ||||
|  *       QSE_MT('\\'), QSE_MT("n\nr\r") | ||||
|  *   ); | ||||
|  * \endcode | ||||
|  * Given [xxx]:[\rabc\ndef]:[] as an input, the example breaks the second  | ||||
|  * Given [xxx]:[\rabc\ndef]:[] as an input, the example translates the second  | ||||
|  * fields to <CR>abc<NL>def where <CR> is a carriage return and <NL> is a  | ||||
|  * new line. | ||||
|  * | ||||
|  | ||||
| @ -289,12 +289,18 @@ static int make_param ( | ||||
| 		qse_mchar_t** argv; | ||||
| 		qse_mchar_t* mcmdptr; | ||||
|  | ||||
| 		param->argv = QSE_MMGR_ALLOC ( | ||||
| 			pio->mmgr, (fcnt + 1) * QSE_SIZEOF(argv[0])); | ||||
| 		if (param->argv == QSE_NULL)  | ||||
| 		if (fcnt < QSE_COUNTOF(param->fixed_argv)) | ||||
| 		{ | ||||
| 			pio->errnum = QSE_PIO_ENOMEM; | ||||
| 			goto oops; | ||||
| 			param->argv = param->fixed_argv; | ||||
| 		} | ||||
| 		else | ||||
| 		{ | ||||
| 			param->argv = QSE_MMGR_ALLOC (pio->mmgr, (fcnt + 1) * QSE_SIZEOF(argv[0])); | ||||
| 			if (param->argv == QSE_NULL)  | ||||
| 			{ | ||||
| 				pio->errnum = QSE_PIO_ENOMEM; | ||||
| 				goto oops; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		mcmdptr = mcmd; | ||||
|  | ||||
| @ -297,7 +297,7 @@ int qse_mbsspltrn ( | ||||
| 					} | ||||
| 					p++; | ||||
| 				} | ||||
| exit_point:			     | ||||
| exit_point: | ||||
| 				; | ||||
| 			} | ||||
| 		} | ||||
| @ -583,7 +583,7 @@ int qse_wcsspltrn ( | ||||
| 					} | ||||
| 					p++; | ||||
| 				} | ||||
| exit_point:			     | ||||
| exit_point: | ||||
| 				; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
		Reference in New Issue
	
	Block a user