这是finsh的小bug?

发布于 2013-08-16 13:37:57
今天看了下finsh代码


#ifdef FINSH_USING_HISTORY
enum input_stat
{
WAIT_NORMAL,
WAIT_SPEC_KEY,
WAIT_FUNC_KEY,
};
#ifndef FINSH_HISTORY_LINES
#define FINSH_HISTORY_LINES 5
#endif
#endif

struct finsh_shell
{
struct rt_semaphore rx_sem;

enum input_stat stat;

rt_uint8_t echo_mode:1;
rt_uint8_t use_history:1;

#ifdef FINSH_USING_HISTORY
rt_uint16_t current_history;
rt_uint16_t history_count;

char cmd_history[FINSH_HISTORY_LINES][FINSH_CMD_SIZE];
#endif

struct finsh_parser parser;

char line[FINSH_CMD_SIZE];
rt_uint8_t line_position;

rt_device_t device;
};


屏蔽历史记录功能后枚举变量那里会出错,应该把它放到#ifdef FINSH_USING_HISTORY后面吧

查看更多

关注者
0
被浏览
1.7k
4 个回答
jeffwei
jeffwei 2013-08-16
shell.c里面有这句注释FINSH_OPTION_ECHO=0x01 is echo mode, other values are none-echo mode.
但是下面的代码使得在shell.h中设置FINSH_OPTION_ECHO没效果
void finsh_thread_entry(void* parameter)
{
char ch;

/* normal is echo mode */
shell->echo_mode = 1;
weibo_午夜熊
weibo_午夜熊 2013-08-18
请在 中报issue吧,谢谢
jeffwei
jeffwei 2013-08-20
请在 中报issue吧,谢谢


我这不方便呢
无法连接







Firefox 无法建立到 github.con 服务器的连接。




此站点暂时不可用或者太忙。请稍后再试。
如果您无法载入任何页面,请检查您计算机的网络连接。
如果您的计算机或网络受到防火墙或者代理服务器的保护,请确认 Firefox 已被授权访问网络。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览